/*
  Copyright (c) 2011-2013 NVIDIA Corporation
  Copyright (c) 2013 Nigel Stewart
  All rights reserved.

  Redistribution and use in source and binary forms, with or without modification,
  are permitted provided that the following conditions are met:

    Redistributions of source code must retain the above copyright notice, this
    list of conditions and the following disclaimer.

    Redistributions in binary form must reproduce the above copyright notice,
    this list of conditions and the following disclaimer in the documentation
    and/or other materials provided with the distribution.

  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
  ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
  INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
  BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
  OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  OF THE POSSIBILITY OF SUCH DAMAGE.
*/

#include "gtest/gtest.h"

#include <GL/Regal.h>

#include <string>

#include "RegalToken.h"

using namespace std;

namespace {

// ====================================
// Regal::Token
// ====================================

TEST( RegalToken, GLenumToString )
{
  // Work in progress

#if 0
  {
    //
    // $ egrep '#define GL_[A-Z_]+[ \t]+0x[0-9A-Fa-f]+' glext.h | sed 's/#define //' |
    //   sed 's/^\(GL_[A-Z0-9_]*\)[^0]*\(0x[0-9A-Fa-f]*\)/    EXPECT_EQ(Regal::Token::GLenumToString(\1,"\1");/' |
    //   sort
    //
    //  Excludes ..._BIT and .._BITS

    EXPECT_EQ(std::string("GL_ABGR_EXT"),Regal::Token::GLenumToString(GL_ABGR_EXT));
    EXPECT_EQ(std::string("GL_ACCUM_ADJACENT_PAIRS_NV"),Regal::Token::GLenumToString(GL_ACCUM_ADJACENT_PAIRS_NV));
    EXPECT_EQ(std::string("GL_ACTIVE_ATOMIC_COUNTER_BUFFERS"),Regal::Token::GLenumToString(GL_ACTIVE_ATOMIC_COUNTER_BUFFERS));
    EXPECT_EQ(std::string("GL_ACTIVE_ATTRIBUTES"),Regal::Token::GLenumToString(GL_ACTIVE_ATTRIBUTES));
    EXPECT_EQ(std::string("GL_ACTIVE_ATTRIBUTE_MAX_LENGTH"),Regal::Token::GLenumToString(GL_ACTIVE_ATTRIBUTE_MAX_LENGTH));
    EXPECT_EQ(std::string("GL_ACTIVE_PROGRAM"),Regal::Token::GLenumToString(GL_ACTIVE_PROGRAM));
    EXPECT_EQ(std::string("GL_CURRENT_PROGRAM"),Regal::Token::GLenumToString(GL_ACTIVE_PROGRAM_EXT));
    EXPECT_EQ(std::string("GL_ACTIVE_STENCIL_FACE_EXT"),Regal::Token::GLenumToString(GL_ACTIVE_STENCIL_FACE_EXT));
    EXPECT_EQ(std::string("GL_ACTIVE_SUBROUTINES"),Regal::Token::GLenumToString(GL_ACTIVE_SUBROUTINES));
    EXPECT_EQ(std::string("GL_ACTIVE_SUBROUTINE_MAX_LENGTH"),Regal::Token::GLenumToString(GL_ACTIVE_SUBROUTINE_MAX_LENGTH));
    EXPECT_EQ(std::string("GL_ACTIVE_SUBROUTINE_UNIFORMS"),Regal::Token::GLenumToString(GL_ACTIVE_SUBROUTINE_UNIFORMS));
    EXPECT_EQ(std::string("GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS"),Regal::Token::GLenumToString(GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS));
    EXPECT_EQ(std::string("GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH"),Regal::Token::GLenumToString(GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH));
    EXPECT_EQ(std::string("GL_ACTIVE_TEXTURE"),Regal::Token::GLenumToString(GL_ACTIVE_TEXTURE));
    EXPECT_EQ(std::string("GL_ACTIVE_TEXTURE"),Regal::Token::GLenumToString(GL_ACTIVE_TEXTURE_ARB));
    EXPECT_EQ(std::string("GL_ACTIVE_UNIFORMS"),Regal::Token::GLenumToString(GL_ACTIVE_UNIFORMS));
    EXPECT_EQ(std::string("GL_ACTIVE_UNIFORM_BLOCKS"),Regal::Token::GLenumToString(GL_ACTIVE_UNIFORM_BLOCKS));
    EXPECT_EQ(std::string("GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH"),Regal::Token::GLenumToString(GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH));
    EXPECT_EQ(std::string("GL_ACTIVE_UNIFORM_MAX_LENGTH"),Regal::Token::GLenumToString(GL_ACTIVE_UNIFORM_MAX_LENGTH));
    EXPECT_EQ(std::string("GL_ACTIVE_VARYINGS_NV"),Regal::Token::GLenumToString(GL_ACTIVE_VARYINGS_NV));
    EXPECT_EQ(std::string("GL_ACTIVE_VARYING_MAX_LENGTH_NV"),Regal::Token::GLenumToString(GL_ACTIVE_VARYING_MAX_LENGTH_NV));
    EXPECT_EQ(std::string("GL_ACTIVE_VERTEX_UNITS_ARB"),Regal::Token::GLenumToString(GL_ACTIVE_VERTEX_UNITS_ARB));
    EXPECT_EQ(std::string("GL_ADD_ATI"),Regal::Token::GLenumToString(GL_ADD_ATI));
    EXPECT_EQ(std::string("GL_ADD_SIGNED"),Regal::Token::GLenumToString(GL_ADD_SIGNED));
    EXPECT_EQ(std::string("GL_ADD_SIGNED"),Regal::Token::GLenumToString(GL_ADD_SIGNED_ARB));
    EXPECT_EQ(std::string("GL_ADD_SIGNED"),Regal::Token::GLenumToString(GL_ADD_SIGNED_EXT));
    EXPECT_EQ(std::string("GL_ADJACENT_PAIRS_NV"),Regal::Token::GLenumToString(GL_ADJACENT_PAIRS_NV));
    EXPECT_EQ(std::string("GL_ALIASED_LINE_WIDTH_RANGE"),Regal::Token::GLenumToString(GL_ALIASED_LINE_WIDTH_RANGE));
    EXPECT_EQ(std::string("GL_ALIASED_POINT_SIZE_RANGE"),Regal::Token::GLenumToString(GL_ALIASED_POINT_SIZE_RANGE));
    EXPECT_EQ(std::string("GL_ALLOW_DRAW_FRG_HINT_PGI"),Regal::Token::GLenumToString(GL_ALLOW_DRAW_FRG_HINT_PGI));
    EXPECT_EQ(std::string("GL_ALLOW_DRAW_MEM_HINT_PGI"),Regal::Token::GLenumToString(GL_ALLOW_DRAW_MEM_HINT_PGI));
    EXPECT_EQ(std::string("GL_ALLOW_DRAW_OBJ_HINT_PGI"),Regal::Token::GLenumToString(GL_ALLOW_DRAW_OBJ_HINT_PGI));
    EXPECT_EQ(std::string("GL_ALLOW_DRAW_WIN_HINT_PGI"),Regal::Token::GLenumToString(GL_ALLOW_DRAW_WIN_HINT_PGI));
    EXPECT_EQ(std::string("GL_ALL_COMPLETED_NV"),Regal::Token::GLenumToString(GL_ALL_COMPLETED_NV));
    EXPECT_EQ(std::string("GL_ALPHA_INTEGER"),Regal::Token::GLenumToString(GL_ALPHA_INTEGER));
    EXPECT_EQ(std::string("GL_ALPHA_INTEGER"),Regal::Token::GLenumToString(GL_ALPHA_INTEGER_EXT));
    EXPECT_EQ(std::string("GL_ALPHA_MAX_CLAMP_INGR"),Regal::Token::GLenumToString(GL_ALPHA_MAX_CLAMP_INGR));
    EXPECT_EQ(std::string("GL_ALPHA_MAX_SGIX"),Regal::Token::GLenumToString(GL_ALPHA_MAX_SGIX));
    EXPECT_EQ(std::string("GL_ALPHA_MIN_CLAMP_INGR"),Regal::Token::GLenumToString(GL_ALPHA_MIN_CLAMP_INGR));
    EXPECT_EQ(std::string("GL_ALPHA_MIN_SGIX"),Regal::Token::GLenumToString(GL_ALPHA_MIN_SGIX));
    EXPECT_EQ(std::string("GL_ALPHA_SNORM"),Regal::Token::GLenumToString(GL_ALPHA_SNORM));
    EXPECT_EQ(std::string("GL_ALREADY_SIGNALED"),Regal::Token::GLenumToString(GL_ALREADY_SIGNALED));
    EXPECT_EQ(std::string("GL_ALWAYS_FAST_HINT_PGI"),Regal::Token::GLenumToString(GL_ALWAYS_FAST_HINT_PGI));
    EXPECT_EQ(std::string("GL_ALWAYS_SOFT_HINT_PGI"),Regal::Token::GLenumToString(GL_ALWAYS_SOFT_HINT_PGI));
    EXPECT_EQ(std::string("GL_ANY_SAMPLES_PASSED"),Regal::Token::GLenumToString(GL_ANY_SAMPLES_PASSED));
    EXPECT_EQ(std::string("GL_ARC_TO_NV"),Regal::Token::GLenumToString(GL_ARC_TO_NV));
    EXPECT_EQ(std::string("GL_ARRAY_BUFFER"),Regal::Token::GLenumToString(GL_ARRAY_BUFFER));
    EXPECT_EQ(std::string("GL_ARRAY_BUFFER"),Regal::Token::GLenumToString(GL_ARRAY_BUFFER_ARB));
    EXPECT_EQ(std::string("GL_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_ARRAY_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_ARRAY_BUFFER_BINDING_ARB));
    EXPECT_EQ(std::string("GL_ARRAY_ELEMENT_LOCK_COUNT_EXT"),Regal::Token::GLenumToString(GL_ARRAY_ELEMENT_LOCK_COUNT_EXT));
    EXPECT_EQ(std::string("GL_ARRAY_ELEMENT_LOCK_FIRST_EXT"),Regal::Token::GLenumToString(GL_ARRAY_ELEMENT_LOCK_FIRST_EXT));
    EXPECT_EQ(std::string("GL_ARRAY_OBJECT_BUFFER_ATI"),Regal::Token::GLenumToString(GL_ARRAY_OBJECT_BUFFER_ATI));
    EXPECT_EQ(std::string("GL_ARRAY_OBJECT_OFFSET_ATI"),Regal::Token::GLenumToString(GL_ARRAY_OBJECT_OFFSET_ATI));
    EXPECT_EQ(std::string("GL_ASYNC_DRAW_PIXELS_SGIX"),Regal::Token::GLenumToString(GL_ASYNC_DRAW_PIXELS_SGIX));
    EXPECT_EQ(std::string("GL_ASYNC_HISTOGRAM_SGIX"),Regal::Token::GLenumToString(GL_ASYNC_HISTOGRAM_SGIX));
    EXPECT_EQ(std::string("GL_ASYNC_MARKER_SGIX"),Regal::Token::GLenumToString(GL_ASYNC_MARKER_SGIX));
    EXPECT_EQ(std::string("GL_ASYNC_READ_PIXELS_SGIX"),Regal::Token::GLenumToString(GL_ASYNC_READ_PIXELS_SGIX));
    EXPECT_EQ(std::string("GL_ASYNC_TEX_IMAGE_SGIX"),Regal::Token::GLenumToString(GL_ASYNC_TEX_IMAGE_SGIX));
    EXPECT_EQ(std::string("GL_ATOMIC_COUNTER_BUFFER"),Regal::Token::GLenumToString(GL_ATOMIC_COUNTER_BUFFER));
    EXPECT_EQ(std::string("GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS"),Regal::Token::GLenumToString(GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS));
    EXPECT_EQ(std::string("GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES"),Regal::Token::GLenumToString(GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES));
    EXPECT_EQ(std::string("GL_ATOMIC_COUNTER_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_ATOMIC_COUNTER_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE"),Regal::Token::GLenumToString(GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE));
    EXPECT_EQ(std::string("GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER"),Regal::Token::GLenumToString(GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER));
    EXPECT_EQ(std::string("GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER"),Regal::Token::GLenumToString(GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER));
    EXPECT_EQ(std::string("GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER"),Regal::Token::GLenumToString(GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER));
    EXPECT_EQ(std::string("GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER"),Regal::Token::GLenumToString(GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER));
    EXPECT_EQ(std::string("GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER"),Regal::Token::GLenumToString(GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER));
    EXPECT_EQ(std::string("GL_ATOMIC_COUNTER_BUFFER_SIZE"),Regal::Token::GLenumToString(GL_ATOMIC_COUNTER_BUFFER_SIZE));
    EXPECT_EQ(std::string("GL_ATOMIC_COUNTER_BUFFER_START"),Regal::Token::GLenumToString(GL_ATOMIC_COUNTER_BUFFER_START));
    EXPECT_EQ(std::string("GL_ATTACHED_SHADERS"),Regal::Token::GLenumToString(GL_ATTACHED_SHADERS));
    EXPECT_EQ(std::string("GL_ATTENUATION_EXT"),Regal::Token::GLenumToString(GL_ATTENUATION_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_POINTER"),Regal::Token::GLenumToString(GL_ATTRIB_ARRAY_POINTER_NV));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_SIZE"),Regal::Token::GLenumToString(GL_ATTRIB_ARRAY_SIZE_NV));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_STRIDE"),Regal::Token::GLenumToString(GL_ATTRIB_ARRAY_STRIDE_NV));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_TYPE"),Regal::Token::GLenumToString(GL_ATTRIB_ARRAY_TYPE_NV));
    EXPECT_EQ(std::string("GL_AUX_DEPTH_STENCIL_APPLE"),Regal::Token::GLenumToString(GL_AUX_DEPTH_STENCIL_APPLE));
    EXPECT_EQ(std::string("GL_AVERAGE_EXT"),Regal::Token::GLenumToString(GL_AVERAGE_EXT));
//    EXPECT_EQ(std::string("GL_AVERAGE_HP"),Regal::Token::GLenumToString(GL_AVERAGE_HP));
    EXPECT_EQ(std::string("GL_BACK_NORMALS_HINT_PGI"),Regal::Token::GLenumToString(GL_BACK_NORMALS_HINT_PGI));
    EXPECT_EQ(std::string("GL_BACK_PRIMARY_COLOR_NV"),Regal::Token::GLenumToString(GL_BACK_PRIMARY_COLOR_NV));
    EXPECT_EQ(std::string("GL_BACK_SECONDARY_COLOR_NV"),Regal::Token::GLenumToString(GL_BACK_SECONDARY_COLOR_NV));
    EXPECT_EQ(std::string("GL_BEVEL_NV"),Regal::Token::GLenumToString(GL_BEVEL_NV));
    EXPECT_EQ(std::string("GL_BGR"),Regal::Token::GLenumToString(GL_BGR));
    EXPECT_EQ(std::string("GL_BGRA"),Regal::Token::GLenumToString(GL_BGRA));
    EXPECT_EQ(std::string("GL_BGRA"),Regal::Token::GLenumToString(GL_BGRA_EXT));
    EXPECT_EQ(std::string("GL_BGRA_INTEGER"),Regal::Token::GLenumToString(GL_BGRA_INTEGER));
    EXPECT_EQ(std::string("GL_BGRA_INTEGER"),Regal::Token::GLenumToString(GL_BGRA_INTEGER_EXT));
    EXPECT_EQ(std::string("GL_BGR"),Regal::Token::GLenumToString(GL_BGR_EXT));
    EXPECT_EQ(std::string("GL_BGR_INTEGER"),Regal::Token::GLenumToString(GL_BGR_INTEGER));
    EXPECT_EQ(std::string("GL_BGR_INTEGER"),Regal::Token::GLenumToString(GL_BGR_INTEGER_EXT));
    EXPECT_EQ(std::string("GL_BIAS_BY_NEGATIVE_ONE_HALF_NV"),Regal::Token::GLenumToString(GL_BIAS_BY_NEGATIVE_ONE_HALF_NV));
    EXPECT_EQ(std::string("GL_BINORMAL_ARRAY_EXT"),Regal::Token::GLenumToString(GL_BINORMAL_ARRAY_EXT));
    EXPECT_EQ(std::string("GL_BINORMAL_ARRAY_POINTER_EXT"),Regal::Token::GLenumToString(GL_BINORMAL_ARRAY_POINTER_EXT));
    EXPECT_EQ(std::string("GL_BINORMAL_ARRAY_STRIDE_EXT"),Regal::Token::GLenumToString(GL_BINORMAL_ARRAY_STRIDE_EXT));
    EXPECT_EQ(std::string("GL_BINORMAL_ARRAY_TYPE_EXT"),Regal::Token::GLenumToString(GL_BINORMAL_ARRAY_TYPE_EXT));
    EXPECT_EQ(std::string("GL_BLEND_COLOR"),Regal::Token::GLenumToString(GL_BLEND_COLOR));
    EXPECT_EQ(std::string("GL_BLEND_COLOR"),Regal::Token::GLenumToString(GL_BLEND_COLOR_EXT));
    EXPECT_EQ(std::string("GL_BLEND_DST_ALPHA"),Regal::Token::GLenumToString(GL_BLEND_DST_ALPHA));
    EXPECT_EQ(std::string("GL_BLEND_DST_ALPHA"),Regal::Token::GLenumToString(GL_BLEND_DST_ALPHA_EXT));
    EXPECT_EQ(std::string("GL_BLEND_DST_RGB"),Regal::Token::GLenumToString(GL_BLEND_DST_RGB));
    EXPECT_EQ(std::string("GL_BLEND_DST_RGB"),Regal::Token::GLenumToString(GL_BLEND_DST_RGB_EXT));
    EXPECT_EQ(std::string("GL_BLEND_EQUATION"),Regal::Token::GLenumToString(GL_BLEND_EQUATION));
    EXPECT_EQ(std::string("GL_BLEND_EQUATION_ALPHA"),Regal::Token::GLenumToString(GL_BLEND_EQUATION_ALPHA));
    EXPECT_EQ(std::string("GL_BLEND_EQUATION_ALPHA"),Regal::Token::GLenumToString(GL_BLEND_EQUATION_ALPHA_EXT));
    EXPECT_EQ(std::string("GL_BLEND_EQUATION"),Regal::Token::GLenumToString(GL_BLEND_EQUATION_EXT));
#if 0
    EXPECT_EQ(std::string("GL_BLEND_EQUATION_RGB"),Regal::Token::GLenumToString(GL_BLEND_EQUATION_RGB));
    EXPECT_EQ(std::string("GL_BLEND_EQUATION_RGB"),Regal::Token::GLenumToString(GL_BLEND_EQUATION_RGB_EXT));
#endif
    EXPECT_EQ(std::string("GL_BLEND_SRC_ALPHA"),Regal::Token::GLenumToString(GL_BLEND_SRC_ALPHA));
    EXPECT_EQ(std::string("GL_BLEND_SRC_ALPHA"),Regal::Token::GLenumToString(GL_BLEND_SRC_ALPHA_EXT));
    EXPECT_EQ(std::string("GL_BLEND_SRC_RGB"),Regal::Token::GLenumToString(GL_BLEND_SRC_RGB));
    EXPECT_EQ(std::string("GL_BLEND_SRC_RGB"),Regal::Token::GLenumToString(GL_BLEND_SRC_RGB_EXT));
    EXPECT_EQ(std::string("GL_BLUE_INTEGER"),Regal::Token::GLenumToString(GL_BLUE_INTEGER));
    EXPECT_EQ(std::string("GL_BLUE_INTEGER"),Regal::Token::GLenumToString(GL_BLUE_INTEGER_EXT));
    EXPECT_EQ(std::string("GL_BLUE_MAX_CLAMP_INGR"),Regal::Token::GLenumToString(GL_BLUE_MAX_CLAMP_INGR));
    EXPECT_EQ(std::string("GL_BLUE_MIN_CLAMP_INGR"),Regal::Token::GLenumToString(GL_BLUE_MIN_CLAMP_INGR));
    EXPECT_EQ(std::string("GL_BOOL"),Regal::Token::GLenumToString(GL_BOOL));
    EXPECT_EQ(std::string("GL_BOOL"),Regal::Token::GLenumToString(GL_BOOL_ARB));
    EXPECT_EQ(std::string("GL_BOUNDING_BOX_NV"),Regal::Token::GLenumToString(GL_BOUNDING_BOX_NV));
    EXPECT_EQ(std::string("GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV"),Regal::Token::GLenumToString(GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV));
    EXPECT_EQ(std::string("GL_BUFFER_ACCESS"),Regal::Token::GLenumToString(GL_BUFFER_ACCESS));
    EXPECT_EQ(std::string("GL_BUFFER_ACCESS"),Regal::Token::GLenumToString(GL_BUFFER_ACCESS_ARB));
    EXPECT_EQ(std::string("GL_BUFFER_ACCESS_FLAGS"),Regal::Token::GLenumToString(GL_BUFFER_ACCESS_FLAGS));
    EXPECT_EQ(std::string("GL_BUFFER_FLUSHING_UNMAP_APPLE"),Regal::Token::GLenumToString(GL_BUFFER_FLUSHING_UNMAP_APPLE));
    EXPECT_EQ(std::string("GL_BUFFER_GPU_ADDRESS_NV"),Regal::Token::GLenumToString(GL_BUFFER_GPU_ADDRESS_NV));
    EXPECT_EQ(std::string("GL_BUFFER_MAPPED"),Regal::Token::GLenumToString(GL_BUFFER_MAPPED));
    EXPECT_EQ(std::string("GL_BUFFER_MAPPED"),Regal::Token::GLenumToString(GL_BUFFER_MAPPED_ARB));
    EXPECT_EQ(std::string("GL_BUFFER_MAP_LENGTH"),Regal::Token::GLenumToString(GL_BUFFER_MAP_LENGTH));
    EXPECT_EQ(std::string("GL_BUFFER_MAP_OFFSET"),Regal::Token::GLenumToString(GL_BUFFER_MAP_OFFSET));
    EXPECT_EQ(std::string("GL_BUFFER_MAP_POINTER"),Regal::Token::GLenumToString(GL_BUFFER_MAP_POINTER));
    EXPECT_EQ(std::string("GL_BUFFER_MAP_POINTER"),Regal::Token::GLenumToString(GL_BUFFER_MAP_POINTER_ARB));
    EXPECT_EQ(std::string("GL_BUFFER_OBJECT_APPLE"),Regal::Token::GLenumToString(GL_BUFFER_OBJECT_APPLE));
    EXPECT_EQ(std::string("GL_BUFFER_SERIALIZED_MODIFY_APPLE"),Regal::Token::GLenumToString(GL_BUFFER_SERIALIZED_MODIFY_APPLE));
    EXPECT_EQ(std::string("GL_BUFFER_SIZE"),Regal::Token::GLenumToString(GL_BUFFER_SIZE));
    EXPECT_EQ(std::string("GL_BUFFER_SIZE"),Regal::Token::GLenumToString(GL_BUFFER_SIZE_ARB));
    EXPECT_EQ(std::string("GL_BUFFER_USAGE"),Regal::Token::GLenumToString(GL_BUFFER_USAGE));
    EXPECT_EQ(std::string("GL_BUFFER_USAGE"),Regal::Token::GLenumToString(GL_BUFFER_USAGE_ARB));
    EXPECT_EQ(std::string("GL_BUMP_ENVMAP_ATI"),Regal::Token::GLenumToString(GL_BUMP_ENVMAP_ATI));
    EXPECT_EQ(std::string("GL_BUMP_NUM_TEX_UNITS_ATI"),Regal::Token::GLenumToString(GL_BUMP_NUM_TEX_UNITS_ATI));
    EXPECT_EQ(std::string("GL_BUMP_ROT_MATRIX_ATI"),Regal::Token::GLenumToString(GL_BUMP_ROT_MATRIX_ATI));
    EXPECT_EQ(std::string("GL_BUMP_ROT_MATRIX_SIZE_ATI"),Regal::Token::GLenumToString(GL_BUMP_ROT_MATRIX_SIZE_ATI));
    EXPECT_EQ(std::string("GL_BUMP_TARGET_ATI"),Regal::Token::GLenumToString(GL_BUMP_TARGET_ATI));
    EXPECT_EQ(std::string("GL_BUMP_TEX_UNITS_ATI"),Regal::Token::GLenumToString(GL_BUMP_TEX_UNITS_ATI));
//    EXPECT_EQ(std::string("GL_CALLIGRAPHIC_FRAGMENT_SGIX"),Regal::Token::GLenumToString(GL_CALLIGRAPHIC_FRAGMENT_SGIX));
    EXPECT_EQ(std::string("GL_CIRCULAR_CCW_ARC_TO_NV"),Regal::Token::GLenumToString(GL_CIRCULAR_CCW_ARC_TO_NV));
    EXPECT_EQ(std::string("GL_CIRCULAR_CW_ARC_TO_NV"),Regal::Token::GLenumToString(GL_CIRCULAR_CW_ARC_TO_NV));
    EXPECT_EQ(std::string("GL_CIRCULAR_TANGENT_ARC_TO_NV"),Regal::Token::GLenumToString(GL_CIRCULAR_TANGENT_ARC_TO_NV));
    EXPECT_EQ(std::string("GL_CLAMP_FRAGMENT_COLOR"),Regal::Token::GLenumToString(GL_CLAMP_FRAGMENT_COLOR));
    EXPECT_EQ(std::string("GL_CLAMP_FRAGMENT_COLOR"),Regal::Token::GLenumToString(GL_CLAMP_FRAGMENT_COLOR_ARB));
    EXPECT_EQ(std::string("GL_CLAMP_READ_COLOR"),Regal::Token::GLenumToString(GL_CLAMP_READ_COLOR));
    EXPECT_EQ(std::string("GL_CLAMP_READ_COLOR"),Regal::Token::GLenumToString(GL_CLAMP_READ_COLOR_ARB));
    EXPECT_EQ(std::string("GL_CLAMP_TO_BORDER"),Regal::Token::GLenumToString(GL_CLAMP_TO_BORDER));
    EXPECT_EQ(std::string("GL_CLAMP_TO_BORDER"),Regal::Token::GLenumToString(GL_CLAMP_TO_BORDER_ARB));
    EXPECT_EQ(std::string("GL_CLAMP_TO_BORDER"),Regal::Token::GLenumToString(GL_CLAMP_TO_BORDER_SGIS));
    EXPECT_EQ(std::string("GL_CLAMP_TO_EDGE"),Regal::Token::GLenumToString(GL_CLAMP_TO_EDGE));
    EXPECT_EQ(std::string("GL_CLAMP_TO_EDGE"),Regal::Token::GLenumToString(GL_CLAMP_TO_EDGE_SGIS));
    EXPECT_EQ(std::string("GL_CLAMP_VERTEX_COLOR"),Regal::Token::GLenumToString(GL_CLAMP_VERTEX_COLOR));
    EXPECT_EQ(std::string("GL_CLAMP_VERTEX_COLOR"),Regal::Token::GLenumToString(GL_CLAMP_VERTEX_COLOR_ARB));
    EXPECT_EQ(std::string("GL_CLIENT_ACTIVE_TEXTURE"),Regal::Token::GLenumToString(GL_CLIENT_ACTIVE_TEXTURE));
    EXPECT_EQ(std::string("GL_CLIENT_ACTIVE_TEXTURE"),Regal::Token::GLenumToString(GL_CLIENT_ACTIVE_TEXTURE_ARB));
    EXPECT_EQ(std::string("GL_CLIP_DISTANCE_NV"),Regal::Token::GLenumToString(GL_CLIP_DISTANCE_NV));
    EXPECT_EQ(std::string("GL_CLIP_FAR_HINT_PGI"),Regal::Token::GLenumToString(GL_CLIP_FAR_HINT_PGI));
    EXPECT_EQ(std::string("GL_CLIP_NEAR_HINT_PGI"),Regal::Token::GLenumToString(GL_CLIP_NEAR_HINT_PGI));
    EXPECT_EQ(std::string("GL_CLIP_VOLUME_CLIPPING_HINT_EXT"),Regal::Token::GLenumToString(GL_CLIP_VOLUME_CLIPPING_HINT_EXT));
    EXPECT_EQ(std::string("GL_CLOSE_PATH_NV"),Regal::Token::GLenumToString(GL_CLOSE_PATH_NV));
    EXPECT_EQ(std::string("GL_CMYKA_EXT"),Regal::Token::GLenumToString(GL_CMYKA_EXT));
    EXPECT_EQ(std::string("GL_CMYK_EXT"),Regal::Token::GLenumToString(GL_CMYK_EXT));
    EXPECT_EQ(std::string("GL_CND_ATI"),Regal::Token::GLenumToString(GL_CND_ATI));
    EXPECT_EQ(std::string("GL_COLOR_ALPHA_PAIRING_ATI"),Regal::Token::GLenumToString(GL_COLOR_ALPHA_PAIRING_ATI));
    EXPECT_EQ(std::string("GL_COLOR_ARRAY_ADDRESS_NV"),Regal::Token::GLenumToString(GL_COLOR_ARRAY_ADDRESS_NV));
    EXPECT_EQ(std::string("GL_COLOR_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_COLOR_ARRAY_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_COLOR_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_COLOR_ARRAY_BUFFER_BINDING_ARB));
    EXPECT_EQ(std::string("GL_COLOR_ARRAY_COUNT_EXT"),Regal::Token::GLenumToString(GL_COLOR_ARRAY_COUNT_EXT));
    EXPECT_EQ(std::string("GL_COLOR_ARRAY_EXT"),Regal::Token::GLenumToString(GL_COLOR_ARRAY_EXT));
    EXPECT_EQ(std::string("GL_COLOR_ARRAY_LENGTH_NV"),Regal::Token::GLenumToString(GL_COLOR_ARRAY_LENGTH_NV));
    EXPECT_EQ(std::string("GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL"),Regal::Token::GLenumToString(GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL));
    EXPECT_EQ(std::string("GL_COLOR_ARRAY_POINTER_EXT"),Regal::Token::GLenumToString(GL_COLOR_ARRAY_POINTER_EXT));
    EXPECT_EQ(std::string("GL_COLOR_ARRAY_SIZE_EXT"),Regal::Token::GLenumToString(GL_COLOR_ARRAY_SIZE_EXT));
    EXPECT_EQ(std::string("GL_COLOR_ARRAY_STRIDE_EXT"),Regal::Token::GLenumToString(GL_COLOR_ARRAY_STRIDE_EXT));
    EXPECT_EQ(std::string("GL_COLOR_ARRAY_TYPE_EXT"),Regal::Token::GLenumToString(GL_COLOR_ARRAY_TYPE_EXT));
//    EXPECT_EQ(std::string("GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI"),Regal::Token::GLenumToString(GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI));
    EXPECT_EQ(std::string("GL_COLOR_FLOAT_APPLE"),Regal::Token::GLenumToString(GL_COLOR_FLOAT_APPLE));
    EXPECT_EQ(std::string("GL_COLOR_MATRIX"),Regal::Token::GLenumToString(GL_COLOR_MATRIX));
    EXPECT_EQ(std::string("GL_COLOR_MATRIX"),Regal::Token::GLenumToString(GL_COLOR_MATRIX_SGI));
    EXPECT_EQ(std::string("GL_COLOR_MATRIX_STACK_DEPTH"),Regal::Token::GLenumToString(GL_COLOR_MATRIX_STACK_DEPTH));
    EXPECT_EQ(std::string("GL_COLOR_MATRIX_STACK_DEPTH"),Regal::Token::GLenumToString(GL_COLOR_MATRIX_STACK_DEPTH_SGI));
    EXPECT_EQ(std::string("GL_COLOR_SAMPLES_NV"),Regal::Token::GLenumToString(GL_COLOR_SAMPLES_NV));
    EXPECT_EQ(std::string("GL_COLOR_SUM"),Regal::Token::GLenumToString(GL_COLOR_SUM));
    EXPECT_EQ(std::string("GL_COLOR_SUM"),Regal::Token::GLenumToString(GL_COLOR_SUM_ARB));
    EXPECT_EQ(std::string("GL_COLOR_SUM_CLAMP_NV"),Regal::Token::GLenumToString(GL_COLOR_SUM_CLAMP_NV));
    EXPECT_EQ(std::string("GL_COLOR_SUM_EXT"),Regal::Token::GLenumToString(GL_COLOR_SUM_EXT));
    EXPECT_EQ(std::string("GL_COLOR_TABLE"),Regal::Token::GLenumToString(GL_COLOR_TABLE));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_ALPHA_SIZE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_ALPHA_SIZE));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_ALPHA_SIZE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_ALPHA_SIZE_SGI));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_BIAS"),Regal::Token::GLenumToString(GL_COLOR_TABLE_BIAS));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_BIAS"),Regal::Token::GLenumToString(GL_COLOR_TABLE_BIAS_SGI));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_BLUE_SIZE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_BLUE_SIZE));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_BLUE_SIZE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_BLUE_SIZE_SGI));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_FORMAT"),Regal::Token::GLenumToString(GL_COLOR_TABLE_FORMAT));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_FORMAT"),Regal::Token::GLenumToString(GL_COLOR_TABLE_FORMAT_SGI));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_GREEN_SIZE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_GREEN_SIZE));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_GREEN_SIZE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_GREEN_SIZE_SGI));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_INTENSITY_SIZE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_INTENSITY_SIZE));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_INTENSITY_SIZE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_INTENSITY_SIZE_SGI));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_LUMINANCE_SIZE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_LUMINANCE_SIZE));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_LUMINANCE_SIZE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_LUMINANCE_SIZE_SGI));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_RED_SIZE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_RED_SIZE));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_RED_SIZE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_RED_SIZE_SGI));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_SCALE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_SCALE));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_SCALE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_SCALE_SGI));
    EXPECT_EQ(std::string("GL_COLOR_TABLE"),Regal::Token::GLenumToString(GL_COLOR_TABLE_SGI));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_WIDTH"),Regal::Token::GLenumToString(GL_COLOR_TABLE_WIDTH));
    EXPECT_EQ(std::string("GL_COLOR_TABLE_WIDTH"),Regal::Token::GLenumToString(GL_COLOR_TABLE_WIDTH_SGI));
    EXPECT_EQ(std::string("GL_COMBINE"),Regal::Token::GLenumToString(GL_COMBINE));
    EXPECT_EQ(std::string("GL_COMBINER_AB_DOT_PRODUCT_NV"),Regal::Token::GLenumToString(GL_COMBINER_AB_DOT_PRODUCT_NV));
    EXPECT_EQ(std::string("GL_COMBINER_AB_OUTPUT_NV"),Regal::Token::GLenumToString(GL_COMBINER_AB_OUTPUT_NV));
    EXPECT_EQ(std::string("GL_COMBINER_BIAS_NV"),Regal::Token::GLenumToString(GL_COMBINER_BIAS_NV));
    EXPECT_EQ(std::string("GL_COMBINER_CD_DOT_PRODUCT_NV"),Regal::Token::GLenumToString(GL_COMBINER_CD_DOT_PRODUCT_NV));
    EXPECT_EQ(std::string("GL_COMBINER_CD_OUTPUT_NV"),Regal::Token::GLenumToString(GL_COMBINER_CD_OUTPUT_NV));
    EXPECT_EQ(std::string("GL_COMBINER_COMPONENT_USAGE_NV"),Regal::Token::GLenumToString(GL_COMBINER_COMPONENT_USAGE_NV));
    EXPECT_EQ(std::string("GL_COMBINER_INPUT_NV"),Regal::Token::GLenumToString(GL_COMBINER_INPUT_NV));
    EXPECT_EQ(std::string("GL_COMBINER_MAPPING_NV"),Regal::Token::GLenumToString(GL_COMBINER_MAPPING_NV));
    EXPECT_EQ(std::string("GL_COMBINER_MUX_SUM_NV"),Regal::Token::GLenumToString(GL_COMBINER_MUX_SUM_NV));
    EXPECT_EQ(std::string("GL_COMBINER_SCALE_NV"),Regal::Token::GLenumToString(GL_COMBINER_SCALE_NV));
    EXPECT_EQ(std::string("GL_COMBINER_SUM_OUTPUT_NV"),Regal::Token::GLenumToString(GL_COMBINER_SUM_OUTPUT_NV));
    EXPECT_EQ(std::string("GL_COMBINE_ALPHA"),Regal::Token::GLenumToString(GL_COMBINE_ALPHA));
    EXPECT_EQ(std::string("GL_COMBINE_ALPHA"),Regal::Token::GLenumToString(GL_COMBINE_ALPHA_ARB));
    EXPECT_EQ(std::string("GL_COMBINE_ALPHA"),Regal::Token::GLenumToString(GL_COMBINE_ALPHA_EXT));
    EXPECT_EQ(std::string("GL_COMBINE_ARB"),Regal::Token::GLenumToString(GL_COMBINE_ARB));
    EXPECT_EQ(std::string("GL_COMBINE_EXT"),Regal::Token::GLenumToString(GL_COMBINE_EXT));
    EXPECT_EQ(std::string("GL_COMBINE_RGB"),Regal::Token::GLenumToString(GL_COMBINE_RGB));
    EXPECT_EQ(std::string("GL_COMBINE_RGB"),Regal::Token::GLenumToString(GL_COMBINE_RGB_ARB));
    EXPECT_EQ(std::string("GL_COMBINE_RGB_EXT"),Regal::Token::GLenumToString(GL_COMBINE_RGB_EXT));
    EXPECT_EQ(std::string("GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT"),Regal::Token::GLenumToString(GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT));
    EXPECT_EQ(std::string("GL_COMPARE_REF_TO_TEXTURE"),Regal::Token::GLenumToString(GL_COMPARE_REF_TO_TEXTURE));
    EXPECT_EQ(std::string("GL_COMPARE_R_TO_TEXTURE"),Regal::Token::GLenumToString(GL_COMPARE_R_TO_TEXTURE));
    EXPECT_EQ(std::string("GL_COMPARE_R_TO_TEXTURE"),Regal::Token::GLenumToString(GL_COMPARE_R_TO_TEXTURE_ARB));
    EXPECT_EQ(std::string("GL_COMPATIBLE_SUBROUTINES"),Regal::Token::GLenumToString(GL_COMPATIBLE_SUBROUTINES));
    EXPECT_EQ(std::string("GL_COMPILE_STATUS"),Regal::Token::GLenumToString(GL_COMPILE_STATUS));
    EXPECT_EQ(std::string("GL_COMPRESSED_ALPHA"),Regal::Token::GLenumToString(GL_COMPRESSED_ALPHA));
    EXPECT_EQ(std::string("GL_COMPRESSED_ALPHA"),Regal::Token::GLenumToString(GL_COMPRESSED_ALPHA_ARB));
    EXPECT_EQ(std::string("GL_COMPRESSED_INTENSITY"),Regal::Token::GLenumToString(GL_COMPRESSED_INTENSITY));
    EXPECT_EQ(std::string("GL_COMPRESSED_INTENSITY"),Regal::Token::GLenumToString(GL_COMPRESSED_INTENSITY_ARB));
    EXPECT_EQ(std::string("GL_COMPRESSED_LUMINANCE"),Regal::Token::GLenumToString(GL_COMPRESSED_LUMINANCE));
    EXPECT_EQ(std::string("GL_COMPRESSED_LUMINANCE_ALPHA"),Regal::Token::GLenumToString(GL_COMPRESSED_LUMINANCE_ALPHA));
    EXPECT_EQ(std::string("GL_COMPRESSED_LUMINANCE_ALPHA"),Regal::Token::GLenumToString(GL_COMPRESSED_LUMINANCE_ALPHA_ARB));
    EXPECT_EQ(std::string("GL_COMPRESSED_LUMINANCE"),Regal::Token::GLenumToString(GL_COMPRESSED_LUMINANCE_ARB));
    EXPECT_EQ(std::string("GL_COMPRESSED_RED"),Regal::Token::GLenumToString(GL_COMPRESSED_RED));
    EXPECT_EQ(std::string("GL_COMPRESSED_RG"),Regal::Token::GLenumToString(GL_COMPRESSED_RG));
    EXPECT_EQ(std::string("GL_COMPRESSED_RGB"),Regal::Token::GLenumToString(GL_COMPRESSED_RGB));
    EXPECT_EQ(std::string("GL_COMPRESSED_RGBA"),Regal::Token::GLenumToString(GL_COMPRESSED_RGBA));
    EXPECT_EQ(std::string("GL_COMPRESSED_RGBA"),Regal::Token::GLenumToString(GL_COMPRESSED_RGBA_ARB));
    EXPECT_EQ(std::string("GL_COMPRESSED_RGBA_BPTC_UNORM_ARB"),Regal::Token::GLenumToString(GL_COMPRESSED_RGBA_BPTC_UNORM_ARB));
    EXPECT_EQ(std::string("GL_COMPRESSED_RGB"),Regal::Token::GLenumToString(GL_COMPRESSED_RGB_ARB));
    EXPECT_EQ(std::string("GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB"),Regal::Token::GLenumToString(GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB));
    EXPECT_EQ(std::string("GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB"),Regal::Token::GLenumToString(GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB));
    EXPECT_EQ(std::string("GL_COMPRESSED_SLUMINANCE"),Regal::Token::GLenumToString(GL_COMPRESSED_SLUMINANCE));
    EXPECT_EQ(std::string("GL_COMPRESSED_SLUMINANCE_ALPHA"),Regal::Token::GLenumToString(GL_COMPRESSED_SLUMINANCE_ALPHA));
    EXPECT_EQ(std::string("GL_COMPRESSED_SLUMINANCE_ALPHA"),Regal::Token::GLenumToString(GL_COMPRESSED_SLUMINANCE_ALPHA_EXT));
    EXPECT_EQ(std::string("GL_COMPRESSED_SLUMINANCE"),Regal::Token::GLenumToString(GL_COMPRESSED_SLUMINANCE_EXT));
    EXPECT_EQ(std::string("GL_COMPRESSED_SRGB"),Regal::Token::GLenumToString(GL_COMPRESSED_SRGB));
    EXPECT_EQ(std::string("GL_COMPRESSED_SRGB_ALPHA"),Regal::Token::GLenumToString(GL_COMPRESSED_SRGB_ALPHA));
    EXPECT_EQ(std::string("GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB"),Regal::Token::GLenumToString(GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB));
    EXPECT_EQ(std::string("GL_COMPRESSED_SRGB_ALPHA"),Regal::Token::GLenumToString(GL_COMPRESSED_SRGB_ALPHA_EXT));
    EXPECT_EQ(std::string("GL_COMPRESSED_SRGB"),Regal::Token::GLenumToString(GL_COMPRESSED_SRGB_EXT));
    EXPECT_EQ(std::string("GL_COMPRESSED_TEXTURE_FORMATS"),Regal::Token::GLenumToString(GL_COMPRESSED_TEXTURE_FORMATS));
    EXPECT_EQ(std::string("GL_COMPRESSED_TEXTURE_FORMATS"),Regal::Token::GLenumToString(GL_COMPRESSED_TEXTURE_FORMATS_ARB));
    EXPECT_EQ(std::string("GL_CONDITION_SATISFIED"),Regal::Token::GLenumToString(GL_CONDITION_SATISFIED));
    EXPECT_EQ(std::string("GL_CONSERVE_MEMORY_HINT_PGI"),Regal::Token::GLenumToString(GL_CONSERVE_MEMORY_HINT_PGI));
    EXPECT_EQ(std::string("GL_CONSTANT"),Regal::Token::GLenumToString(GL_CONSTANT));
    EXPECT_EQ(std::string("GL_CONSTANT_ALPHA"),Regal::Token::GLenumToString(GL_CONSTANT_ALPHA));
    EXPECT_EQ(std::string("GL_CONSTANT_ALPHA"),Regal::Token::GLenumToString(GL_CONSTANT_ALPHA_EXT));
    EXPECT_EQ(std::string("GL_CONSTANT"),Regal::Token::GLenumToString(GL_CONSTANT_ARB));
    EXPECT_EQ(std::string("GL_CONSTANT_BORDER"),Regal::Token::GLenumToString(GL_CONSTANT_BORDER));
//    EXPECT_EQ(std::string("GL_CONSTANT_BORDER_HP"),Regal::Token::GLenumToString(GL_CONSTANT_BORDER_HP));
    EXPECT_EQ(std::string("GL_CONSTANT_COLOR"),Regal::Token::GLenumToString(GL_CONSTANT_COLOR));
    EXPECT_EQ(std::string("GL_CONSTANT_COLOR"),Regal::Token::GLenumToString(GL_CONSTANT_COLOR_EXT));
    EXPECT_EQ(std::string("GL_CONSTANT"),Regal::Token::GLenumToString(GL_CONSTANT_EXT));
    EXPECT_EQ(std::string("GL_CONST_EYE_NV"),Regal::Token::GLenumToString(GL_CONST_EYE_NV));
    EXPECT_EQ(std::string("GL_CONTEXT_FLAGS"),Regal::Token::GLenumToString(GL_CONTEXT_FLAGS));
    EXPECT_EQ(std::string("GL_CONTEXT_PROFILE_MASK"),Regal::Token::GLenumToString(GL_CONTEXT_PROFILE_MASK));
    EXPECT_EQ(std::string("GL_CONTINUOUS_AMD"),Regal::Token::GLenumToString(GL_CONTINUOUS_AMD));
    EXPECT_EQ(std::string("GL_CONVEX_HULL_NV"),Regal::Token::GLenumToString(GL_CONVEX_HULL_NV));
    EXPECT_EQ(std::string("GL_CONVOLUTION_BORDER_COLOR"),Regal::Token::GLenumToString(GL_CONVOLUTION_BORDER_COLOR));
//    EXPECT_EQ(std::string("GL_CONVOLUTION_BORDER_COLOR_HP"),Regal::Token::GLenumToString(GL_CONVOLUTION_BORDER_COLOR_HP));
    EXPECT_EQ(std::string("GL_CONVOLUTION_BORDER_MODE"),Regal::Token::GLenumToString(GL_CONVOLUTION_BORDER_MODE));
    EXPECT_EQ(std::string("GL_CONVOLUTION_BORDER_MODE"),Regal::Token::GLenumToString(GL_CONVOLUTION_BORDER_MODE_EXT));
    EXPECT_EQ(std::string("GL_CONVOLUTION_FILTER_BIAS"),Regal::Token::GLenumToString(GL_CONVOLUTION_FILTER_BIAS));
    EXPECT_EQ(std::string("GL_CONVOLUTION_FILTER_BIAS"),Regal::Token::GLenumToString(GL_CONVOLUTION_FILTER_BIAS_EXT));
    EXPECT_EQ(std::string("GL_CONVOLUTION_FILTER_SCALE"),Regal::Token::GLenumToString(GL_CONVOLUTION_FILTER_SCALE));
    EXPECT_EQ(std::string("GL_CONVOLUTION_FILTER_SCALE"),Regal::Token::GLenumToString(GL_CONVOLUTION_FILTER_SCALE_EXT));
    EXPECT_EQ(std::string("GL_CONVOLUTION_FORMAT"),Regal::Token::GLenumToString(GL_CONVOLUTION_FORMAT));
    EXPECT_EQ(std::string("GL_CONVOLUTION_FORMAT"),Regal::Token::GLenumToString(GL_CONVOLUTION_FORMAT_EXT));
    EXPECT_EQ(std::string("GL_CONVOLUTION_HEIGHT"),Regal::Token::GLenumToString(GL_CONVOLUTION_HEIGHT));
    EXPECT_EQ(std::string("GL_CONVOLUTION_HEIGHT"),Regal::Token::GLenumToString(GL_CONVOLUTION_HEIGHT_EXT));
    EXPECT_EQ(std::string("GL_CONVOLUTION_HINT_SGIX"),Regal::Token::GLenumToString(GL_CONVOLUTION_HINT_SGIX));
    EXPECT_EQ(std::string("GL_CONVOLUTION_WIDTH"),Regal::Token::GLenumToString(GL_CONVOLUTION_WIDTH));
    EXPECT_EQ(std::string("GL_CONVOLUTION_WIDTH"),Regal::Token::GLenumToString(GL_CONVOLUTION_WIDTH_EXT));
    EXPECT_EQ(std::string("GL_COORD_REPLACE"),Regal::Token::GLenumToString(GL_COORD_REPLACE));
    EXPECT_EQ(std::string("GL_COORD_REPLACE"),Regal::Token::GLenumToString(GL_COORD_REPLACE_ARB));
    EXPECT_EQ(std::string("GL_COORD_REPLACE_NV"),Regal::Token::GLenumToString(GL_COORD_REPLACE_NV));
//    EXPECT_EQ(std::string("GL_COPY_READ_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_COPY_READ_BUFFER_BINDING));
//    EXPECT_EQ(std::string("GL_COPY_WRITE_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_COPY_WRITE_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_COUNTER_RANGE_AMD"),Regal::Token::GLenumToString(GL_COUNTER_RANGE_AMD));
    EXPECT_EQ(std::string("GL_COUNTER_TYPE_AMD"),Regal::Token::GLenumToString(GL_COUNTER_TYPE_AMD));
    EXPECT_EQ(std::string("GL_COUNT_DOWN_NV"),Regal::Token::GLenumToString(GL_COUNT_DOWN_NV));
    EXPECT_EQ(std::string("GL_COUNT_UP_NV"),Regal::Token::GLenumToString(GL_COUNT_UP_NV));
    EXPECT_EQ(std::string("GL_COVERAGE_SAMPLES_NV"),Regal::Token::GLenumToString(GL_COVERAGE_SAMPLES_NV));
    EXPECT_EQ(std::string("GL_CUBIC_CURVE_TO_NV"),Regal::Token::GLenumToString(GL_CUBIC_CURVE_TO_NV));
    EXPECT_EQ(std::string("GL_CUBIC_EXT"),Regal::Token::GLenumToString(GL_CUBIC_EXT));
//    EXPECT_EQ(std::string("GL_CUBIC_HP"),Regal::Token::GLenumToString(GL_CUBIC_HP));
    EXPECT_EQ(std::string("GL_CULL_FRAGMENT_NV"),Regal::Token::GLenumToString(GL_CULL_FRAGMENT_NV));
    EXPECT_EQ(std::string("GL_CULL_MODES_NV"),Regal::Token::GLenumToString(GL_CULL_MODES_NV));
    EXPECT_EQ(std::string("GL_CULL_VERTEX_EXT"),Regal::Token::GLenumToString(GL_CULL_VERTEX_EXT));
    EXPECT_EQ(std::string("GL_CULL_VERTEX_EYE_POSITION_EXT"),Regal::Token::GLenumToString(GL_CULL_VERTEX_EYE_POSITION_EXT));
    EXPECT_EQ(std::string("GL_CULL_VERTEX_OBJECT_POSITION_EXT"),Regal::Token::GLenumToString(GL_CULL_VERTEX_OBJECT_POSITION_EXT));
    EXPECT_EQ(std::string("GL_CURRENT_ATTRIB_NV"),Regal::Token::GLenumToString(GL_CURRENT_ATTRIB_NV));
    EXPECT_EQ(std::string("GL_CURRENT_BINORMAL_EXT"),Regal::Token::GLenumToString(GL_CURRENT_BINORMAL_EXT));
    EXPECT_EQ(std::string("GL_CURRENT_FOG_COORD"),Regal::Token::GLenumToString(GL_CURRENT_FOG_COORD));
    EXPECT_EQ(std::string("GL_CURRENT_FOG_COORDINATE"),Regal::Token::GLenumToString(GL_CURRENT_FOG_COORDINATE));
    EXPECT_EQ(std::string("GL_CURRENT_FOG_COORDINATE"),Regal::Token::GLenumToString(GL_CURRENT_FOG_COORDINATE_EXT));
    EXPECT_EQ(std::string("GL_CURRENT_MATRIX_ARB"),Regal::Token::GLenumToString(GL_CURRENT_MATRIX_ARB));
    EXPECT_EQ(std::string("GL_CURRENT_MATRIX_INDEX_ARB"),Regal::Token::GLenumToString(GL_CURRENT_MATRIX_INDEX_ARB));
    EXPECT_EQ(std::string("GL_CURRENT_MATRIX_NV"),Regal::Token::GLenumToString(GL_CURRENT_MATRIX_NV));
    EXPECT_EQ(std::string("GL_CURRENT_MATRIX_STACK_DEPTH_ARB"),Regal::Token::GLenumToString(GL_CURRENT_MATRIX_STACK_DEPTH_ARB));
    EXPECT_EQ(std::string("GL_CURRENT_MATRIX_STACK_DEPTH_NV"),Regal::Token::GLenumToString(GL_CURRENT_MATRIX_STACK_DEPTH_NV));
    EXPECT_EQ(std::string("GL_CURRENT_OCCLUSION_QUERY_ID_NV"),Regal::Token::GLenumToString(GL_CURRENT_OCCLUSION_QUERY_ID_NV));
    EXPECT_EQ(std::string("GL_CURRENT_PALETTE_MATRIX_ARB"),Regal::Token::GLenumToString(GL_CURRENT_PALETTE_MATRIX_ARB));
    EXPECT_EQ(std::string("GL_CURRENT_PROGRAM"),Regal::Token::GLenumToString(GL_CURRENT_PROGRAM));
    EXPECT_EQ(std::string("GL_CURRENT_QUERY"),Regal::Token::GLenumToString(GL_CURRENT_QUERY));
    EXPECT_EQ(std::string("GL_CURRENT_QUERY"),Regal::Token::GLenumToString(GL_CURRENT_QUERY_ARB));
//    EXPECT_EQ(std::string("GL_CURRENT_RASTER_NORMAL_SGIX"),Regal::Token::GLenumToString(GL_CURRENT_RASTER_NORMAL_SGIX));
    EXPECT_EQ(std::string("GL_CURRENT_RASTER_SECONDARY_COLOR"),Regal::Token::GLenumToString(GL_CURRENT_RASTER_SECONDARY_COLOR));
    EXPECT_EQ(std::string("GL_CURRENT_SECONDARY_COLOR"),Regal::Token::GLenumToString(GL_CURRENT_SECONDARY_COLOR));
    EXPECT_EQ(std::string("GL_CURRENT_SECONDARY_COLOR"),Regal::Token::GLenumToString(GL_CURRENT_SECONDARY_COLOR_EXT));
    EXPECT_EQ(std::string("GL_CURRENT_TANGENT_EXT"),Regal::Token::GLenumToString(GL_CURRENT_TANGENT_EXT));
    EXPECT_EQ(std::string("GL_CURRENT_TIME_NV"),Regal::Token::GLenumToString(GL_CURRENT_TIME_NV));
    EXPECT_EQ(std::string("GL_CURRENT_VERTEX_ATTRIB"),Regal::Token::GLenumToString(GL_CURRENT_VERTEX_ATTRIB));
    EXPECT_EQ(std::string("GL_CURRENT_VERTEX_ATTRIB"),Regal::Token::GLenumToString(GL_CURRENT_VERTEX_ATTRIB_ARB));
    EXPECT_EQ(std::string("GL_CURRENT_VERTEX_EXT"),Regal::Token::GLenumToString(GL_CURRENT_VERTEX_EXT));
    EXPECT_EQ(std::string("GL_CURRENT_VERTEX_WEIGHT_EXT"),Regal::Token::GLenumToString(GL_CURRENT_VERTEX_WEIGHT_EXT));
    EXPECT_EQ(std::string("GL_CURRENT_WEIGHT_ARB"),Regal::Token::GLenumToString(GL_CURRENT_WEIGHT_ARB));
    EXPECT_EQ(std::string("GL_DATA_BUFFER_AMD"),Regal::Token::GLenumToString(GL_DATA_BUFFER_AMD));
    EXPECT_EQ(std::string("GL_DEBUG_CALLBACK_FUNCTION_ARB"),Regal::Token::GLenumToString(GL_DEBUG_CALLBACK_FUNCTION_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_CALLBACK_USER_PARAM_ARB"),Regal::Token::GLenumToString(GL_DEBUG_CALLBACK_USER_PARAM_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_CATEGORY_API_ERROR_AMD"),Regal::Token::GLenumToString(GL_DEBUG_CATEGORY_API_ERROR_AMD));
    EXPECT_EQ(std::string("GL_DEBUG_CATEGORY_APPLICATION_AMD"),Regal::Token::GLenumToString(GL_DEBUG_CATEGORY_APPLICATION_AMD));
    EXPECT_EQ(std::string("GL_DEBUG_CATEGORY_DEPRECATION_AMD"),Regal::Token::GLenumToString(GL_DEBUG_CATEGORY_DEPRECATION_AMD));
    EXPECT_EQ(std::string("GL_DEBUG_CATEGORY_OTHER_AMD"),Regal::Token::GLenumToString(GL_DEBUG_CATEGORY_OTHER_AMD));
    EXPECT_EQ(std::string("GL_DEBUG_CATEGORY_PERFORMANCE_AMD"),Regal::Token::GLenumToString(GL_DEBUG_CATEGORY_PERFORMANCE_AMD));
    EXPECT_EQ(std::string("GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD"),Regal::Token::GLenumToString(GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD));
    EXPECT_EQ(std::string("GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD"),Regal::Token::GLenumToString(GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD));
    EXPECT_EQ(std::string("GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD"),Regal::Token::GLenumToString(GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD));
    EXPECT_EQ(std::string("GL_DEBUG_LOGGED_MESSAGES_AMD"),Regal::Token::GLenumToString(GL_DEBUG_LOGGED_MESSAGES_AMD));
    EXPECT_EQ(std::string("GL_DEBUG_LOGGED_MESSAGES_ARB"),Regal::Token::GLenumToString(GL_DEBUG_LOGGED_MESSAGES_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB"),Regal::Token::GLenumToString(GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB"),Regal::Token::GLenumToString(GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_SEVERITY_HIGH_AMD"),Regal::Token::GLenumToString(GL_DEBUG_SEVERITY_HIGH_AMD));
    EXPECT_EQ(std::string("GL_DEBUG_SEVERITY_HIGH_ARB"),Regal::Token::GLenumToString(GL_DEBUG_SEVERITY_HIGH_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_SEVERITY_LOW_AMD"),Regal::Token::GLenumToString(GL_DEBUG_SEVERITY_LOW_AMD));
    EXPECT_EQ(std::string("GL_DEBUG_SEVERITY_LOW_ARB"),Regal::Token::GLenumToString(GL_DEBUG_SEVERITY_LOW_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_SEVERITY_MEDIUM_AMD"),Regal::Token::GLenumToString(GL_DEBUG_SEVERITY_MEDIUM_AMD));
    EXPECT_EQ(std::string("GL_DEBUG_SEVERITY_MEDIUM_ARB"),Regal::Token::GLenumToString(GL_DEBUG_SEVERITY_MEDIUM_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_SOURCE_API_ARB"),Regal::Token::GLenumToString(GL_DEBUG_SOURCE_API_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_SOURCE_APPLICATION_ARB"),Regal::Token::GLenumToString(GL_DEBUG_SOURCE_APPLICATION_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_SOURCE_OTHER_ARB"),Regal::Token::GLenumToString(GL_DEBUG_SOURCE_OTHER_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_SOURCE_SHADER_COMPILER_ARB"),Regal::Token::GLenumToString(GL_DEBUG_SOURCE_SHADER_COMPILER_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_SOURCE_THIRD_PARTY_ARB"),Regal::Token::GLenumToString(GL_DEBUG_SOURCE_THIRD_PARTY_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB"),Regal::Token::GLenumToString(GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB"),Regal::Token::GLenumToString(GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_TYPE_ERROR_ARB"),Regal::Token::GLenumToString(GL_DEBUG_TYPE_ERROR_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_TYPE_OTHER_ARB"),Regal::Token::GLenumToString(GL_DEBUG_TYPE_OTHER_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_TYPE_PERFORMANCE_ARB"),Regal::Token::GLenumToString(GL_DEBUG_TYPE_PERFORMANCE_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_TYPE_PORTABILITY_ARB"),Regal::Token::GLenumToString(GL_DEBUG_TYPE_PORTABILITY_ARB));
    EXPECT_EQ(std::string("GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB"),Regal::Token::GLenumToString(GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB));
    EXPECT_EQ(std::string("GL_DECODE_EXT"),Regal::Token::GLenumToString(GL_DECODE_EXT));
    EXPECT_EQ(std::string("GL_DECR_WRAP"),Regal::Token::GLenumToString(GL_DECR_WRAP));
    EXPECT_EQ(std::string("GL_DECR_WRAP"),Regal::Token::GLenumToString(GL_DECR_WRAP_EXT));
//    EXPECT_EQ(std::string("GL_DEFORMATIONS_MASK_SGIX"),Regal::Token::GLenumToString(GL_DEFORMATIONS_MASK_SGIX));
    EXPECT_EQ(std::string("GL_DELETE_STATUS"),Regal::Token::GLenumToString(GL_DELETE_STATUS));
    EXPECT_EQ(std::string("GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV"),Regal::Token::GLenumToString(GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV));
    EXPECT_EQ(std::string("GL_DEPTH_ATTACHMENT"),Regal::Token::GLenumToString(GL_DEPTH_ATTACHMENT));
    EXPECT_EQ(std::string("GL_DEPTH_ATTACHMENT_EXT"),Regal::Token::GLenumToString(GL_DEPTH_ATTACHMENT_EXT));
    EXPECT_EQ(std::string("GL_DEPTH_BOUNDS_EXT"),Regal::Token::GLenumToString(GL_DEPTH_BOUNDS_EXT));
    EXPECT_EQ(std::string("GL_DEPTH_BOUNDS_TEST_EXT"),Regal::Token::GLenumToString(GL_DEPTH_BOUNDS_TEST_EXT));
    EXPECT_EQ(std::string("GL_DEPTH_BUFFER_FLOAT_MODE_NV"),Regal::Token::GLenumToString(GL_DEPTH_BUFFER_FLOAT_MODE_NV));
    EXPECT_EQ(std::string("GL_DEPTH_CLAMP"),Regal::Token::GLenumToString(GL_DEPTH_CLAMP));
    EXPECT_EQ(std::string("GL_DEPTH_CLAMP_FAR_AMD"),Regal::Token::GLenumToString(GL_DEPTH_CLAMP_FAR_AMD));
    EXPECT_EQ(std::string("GL_DEPTH_CLAMP_NEAR_AMD"),Regal::Token::GLenumToString(GL_DEPTH_CLAMP_NEAR_AMD));
    EXPECT_EQ(std::string("GL_DEPTH_CLAMP_NV"),Regal::Token::GLenumToString(GL_DEPTH_CLAMP_NV));
//    EXPECT_EQ(std::string("GL_DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX"),Regal::Token::GLenumToString(GL_DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX));
//    EXPECT_EQ(std::string("GL_DEPTH_PASS_INSTRUMENT_MAX_SGIX"),Regal::Token::GLenumToString(GL_DEPTH_PASS_INSTRUMENT_MAX_SGIX));
//    EXPECT_EQ(std::string("GL_DEPTH_PASS_INSTRUMENT_SGIX"),Regal::Token::GLenumToString(GL_DEPTH_PASS_INSTRUMENT_SGIX));
    EXPECT_EQ(std::string("GL_DEPTH_STENCIL"),Regal::Token::GLenumToString(GL_DEPTH_STENCIL));
    EXPECT_EQ(std::string("GL_DEPTH_STENCIL_ATTACHMENT"),Regal::Token::GLenumToString(GL_DEPTH_STENCIL_ATTACHMENT));
    EXPECT_EQ(std::string("GL_DEPTH_STENCIL"),Regal::Token::GLenumToString(GL_DEPTH_STENCIL_EXT));
    EXPECT_EQ(std::string("GL_DEPTH_STENCIL_NV"),Regal::Token::GLenumToString(GL_DEPTH_STENCIL_NV));
    EXPECT_EQ(std::string("GL_DEPTH_STENCIL_TO_BGRA_NV"),Regal::Token::GLenumToString(GL_DEPTH_STENCIL_TO_BGRA_NV));
    EXPECT_EQ(std::string("GL_DEPTH_STENCIL_TO_RGBA_NV"),Regal::Token::GLenumToString(GL_DEPTH_STENCIL_TO_RGBA_NV));
    EXPECT_EQ(std::string("GL_DEPTH_TEXTURE_MODE"),Regal::Token::GLenumToString(GL_DEPTH_TEXTURE_MODE));
    EXPECT_EQ(std::string("GL_DEPTH_TEXTURE_MODE"),Regal::Token::GLenumToString(GL_DEPTH_TEXTURE_MODE_ARB));
    EXPECT_EQ(std::string("GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS"),Regal::Token::GLenumToString(GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS));
    EXPECT_EQ(std::string("GL_DETAIL_TEXTURE_LEVEL_SGIS"),Regal::Token::GLenumToString(GL_DETAIL_TEXTURE_LEVEL_SGIS));
    EXPECT_EQ(std::string("GL_DETAIL_TEXTURE_MODE_SGIS"),Regal::Token::GLenumToString(GL_DETAIL_TEXTURE_MODE_SGIS));
    EXPECT_EQ(std::string("GL_DISCARD_ATI"),Regal::Token::GLenumToString(GL_DISCARD_ATI));
    EXPECT_EQ(std::string("GL_DISCARD_NV"),Regal::Token::GLenumToString(GL_DISCARD_NV));
    EXPECT_EQ(std::string("GL_DISCRETE_AMD"),Regal::Token::GLenumToString(GL_DISCRETE_AMD));
    EXPECT_EQ(std::string("GL_DISTANCE_ATTENUATION_EXT"),Regal::Token::GLenumToString(GL_DISTANCE_ATTENUATION_EXT));
//    EXPECT_EQ(std::string("GL_DISTANCE_ATTENUATION_SGIS"),Regal::Token::GLenumToString(GL_DISTANCE_ATTENUATION_SGIS));
    EXPECT_EQ(std::string("GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV"),Regal::Token::GLenumToString(GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV));
    EXPECT_EQ(std::string("GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV"),Regal::Token::GLenumToString(GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV));
    EXPECT_EQ(std::string("GL_DOT_PRODUCT_DEPTH_REPLACE_NV"),Regal::Token::GLenumToString(GL_DOT_PRODUCT_DEPTH_REPLACE_NV));
    EXPECT_EQ(std::string("GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV"),Regal::Token::GLenumToString(GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV));
    EXPECT_EQ(std::string("GL_DOT_PRODUCT_NV"),Regal::Token::GLenumToString(GL_DOT_PRODUCT_NV));
    EXPECT_EQ(std::string("GL_DOT_PRODUCT_PASS_THROUGH_NV"),Regal::Token::GLenumToString(GL_DOT_PRODUCT_PASS_THROUGH_NV));
    EXPECT_EQ(std::string("GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV"),Regal::Token::GLenumToString(GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV));
    EXPECT_EQ(std::string("GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV"),Regal::Token::GLenumToString(GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV));
    EXPECT_EQ(std::string("GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV"),Regal::Token::GLenumToString(GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV));
    EXPECT_EQ(std::string("GL_DRAW_FRAMEBUFFER"),Regal::Token::GLenumToString(GL_DRAW_FRAMEBUFFER));
    EXPECT_EQ(std::string("GL_DRAW_FRAMEBUFFER"),Regal::Token::GLenumToString(GL_DRAW_FRAMEBUFFER_EXT));
    EXPECT_EQ(std::string("GL_DRAW_INDIRECT_ADDRESS_NV"),Regal::Token::GLenumToString(GL_DRAW_INDIRECT_ADDRESS_NV));
    EXPECT_EQ(std::string("GL_DRAW_INDIRECT_BUFFER"),Regal::Token::GLenumToString(GL_DRAW_INDIRECT_BUFFER));
    EXPECT_EQ(std::string("GL_DRAW_INDIRECT_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_DRAW_INDIRECT_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_DRAW_INDIRECT_LENGTH_NV"),Regal::Token::GLenumToString(GL_DRAW_INDIRECT_LENGTH_NV));
    EXPECT_EQ(std::string("GL_DRAW_INDIRECT_UNIFIED_NV"),Regal::Token::GLenumToString(GL_DRAW_INDIRECT_UNIFIED_NV));
    EXPECT_EQ(std::string("GL_DRAW_PIXELS_APPLE"),Regal::Token::GLenumToString(GL_DRAW_PIXELS_APPLE));
    EXPECT_EQ(std::string("GL_DSDT_MAG_INTENSITY_NV"),Regal::Token::GLenumToString(GL_DSDT_MAG_INTENSITY_NV));
    EXPECT_EQ(std::string("GL_DSDT_MAG_NV"),Regal::Token::GLenumToString(GL_DSDT_MAG_NV));
    EXPECT_EQ(std::string("GL_DSDT_MAG_VIB_NV"),Regal::Token::GLenumToString(GL_DSDT_MAG_VIB_NV));
    EXPECT_EQ(std::string("GL_DSDT_NV"),Regal::Token::GLenumToString(GL_DSDT_NV));
    EXPECT_EQ(std::string("GL_DS_BIAS_NV"),Regal::Token::GLenumToString(GL_DS_BIAS_NV));
    EXPECT_EQ(std::string("GL_DS_SCALE_NV"),Regal::Token::GLenumToString(GL_DS_SCALE_NV));
    EXPECT_EQ(std::string("GL_DT_BIAS_NV"),Regal::Token::GLenumToString(GL_DT_BIAS_NV));
    EXPECT_EQ(std::string("GL_DT_SCALE_NV"),Regal::Token::GLenumToString(GL_DT_SCALE_NV));
//    EXPECT_EQ(std::string("GL_DUAL_TEXTURE_SELECT_SGIS"),Regal::Token::GLenumToString(GL_DUAL_TEXTURE_SELECT_SGIS));
    EXPECT_EQ(std::string("GL_DUDV_ATI"),Regal::Token::GLenumToString(GL_DUDV_ATI));
    EXPECT_EQ(std::string("GL_DUP_FIRST_CUBIC_CURVE_TO_NV"),Regal::Token::GLenumToString(GL_DUP_FIRST_CUBIC_CURVE_TO_NV));
    EXPECT_EQ(std::string("GL_DUP_LAST_CUBIC_CURVE_TO_NV"),Regal::Token::GLenumToString(GL_DUP_LAST_CUBIC_CURVE_TO_NV));
    EXPECT_EQ(std::string("GL_DYNAMIC_ATI"),Regal::Token::GLenumToString(GL_DYNAMIC_ATI));
    EXPECT_EQ(std::string("GL_DYNAMIC_COPY"),Regal::Token::GLenumToString(GL_DYNAMIC_COPY));
    EXPECT_EQ(std::string("GL_DYNAMIC_COPY"),Regal::Token::GLenumToString(GL_DYNAMIC_COPY_ARB));
    EXPECT_EQ(std::string("GL_DYNAMIC_DRAW"),Regal::Token::GLenumToString(GL_DYNAMIC_DRAW));
    EXPECT_EQ(std::string("GL_DYNAMIC_DRAW"),Regal::Token::GLenumToString(GL_DYNAMIC_DRAW_ARB));
    EXPECT_EQ(std::string("GL_DYNAMIC_READ"),Regal::Token::GLenumToString(GL_DYNAMIC_READ));
    EXPECT_EQ(std::string("GL_DYNAMIC_READ"),Regal::Token::GLenumToString(GL_DYNAMIC_READ_ARB));
    EXPECT_EQ(std::string("GL_EDGE_FLAG_ARRAY_ADDRESS_NV"),Regal::Token::GLenumToString(GL_EDGE_FLAG_ARRAY_ADDRESS_NV));
    EXPECT_EQ(std::string("GL_EDGE_FLAG_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_EDGE_FLAG_ARRAY_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_EDGE_FLAG_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB));
    EXPECT_EQ(std::string("GL_EDGE_FLAG_ARRAY_COUNT_EXT"),Regal::Token::GLenumToString(GL_EDGE_FLAG_ARRAY_COUNT_EXT));
    EXPECT_EQ(std::string("GL_EDGE_FLAG_ARRAY_EXT"),Regal::Token::GLenumToString(GL_EDGE_FLAG_ARRAY_EXT));
    EXPECT_EQ(std::string("GL_EDGE_FLAG_ARRAY_LENGTH_NV"),Regal::Token::GLenumToString(GL_EDGE_FLAG_ARRAY_LENGTH_NV));
    EXPECT_EQ(std::string("GL_EDGE_FLAG_ARRAY_POINTER_EXT"),Regal::Token::GLenumToString(GL_EDGE_FLAG_ARRAY_POINTER_EXT));
    EXPECT_EQ(std::string("GL_EDGE_FLAG_ARRAY_STRIDE_EXT"),Regal::Token::GLenumToString(GL_EDGE_FLAG_ARRAY_STRIDE_EXT));
    EXPECT_EQ(std::string("GL_ELEMENT_ARRAY_ADDRESS_NV"),Regal::Token::GLenumToString(GL_ELEMENT_ARRAY_ADDRESS_NV));
    EXPECT_EQ(std::string("GL_ELEMENT_ARRAY_APPLE"),Regal::Token::GLenumToString(GL_ELEMENT_ARRAY_APPLE));
    EXPECT_EQ(std::string("GL_ELEMENT_ARRAY_ATI"),Regal::Token::GLenumToString(GL_ELEMENT_ARRAY_ATI));
    EXPECT_EQ(std::string("GL_ELEMENT_ARRAY_BUFFER"),Regal::Token::GLenumToString(GL_ELEMENT_ARRAY_BUFFER));
    EXPECT_EQ(std::string("GL_ELEMENT_ARRAY_BUFFER"),Regal::Token::GLenumToString(GL_ELEMENT_ARRAY_BUFFER_ARB));
    EXPECT_EQ(std::string("GL_ELEMENT_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_ELEMENT_ARRAY_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_ELEMENT_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB));
    EXPECT_EQ(std::string("GL_ELEMENT_ARRAY_LENGTH_NV"),Regal::Token::GLenumToString(GL_ELEMENT_ARRAY_LENGTH_NV));
    EXPECT_EQ(std::string("GL_ELEMENT_ARRAY_POINTER_APPLE"),Regal::Token::GLenumToString(GL_ELEMENT_ARRAY_POINTER_APPLE));
    EXPECT_EQ(std::string("GL_ELEMENT_ARRAY_POINTER_ATI"),Regal::Token::GLenumToString(GL_ELEMENT_ARRAY_POINTER_ATI));
    EXPECT_EQ(std::string("GL_ELEMENT_ARRAY_TYPE_APPLE"),Regal::Token::GLenumToString(GL_ELEMENT_ARRAY_TYPE_APPLE));
    EXPECT_EQ(std::string("GL_ELEMENT_ARRAY_TYPE_ATI"),Regal::Token::GLenumToString(GL_ELEMENT_ARRAY_TYPE_ATI));
    EXPECT_EQ(std::string("GL_ELEMENT_ARRAY_UNIFIED_NV"),Regal::Token::GLenumToString(GL_ELEMENT_ARRAY_UNIFIED_NV));
    EXPECT_EQ(std::string("GL_EMBOSS_CONSTANT_NV"),Regal::Token::GLenumToString(GL_EMBOSS_CONSTANT_NV));
    EXPECT_EQ(std::string("GL_EMBOSS_LIGHT_NV"),Regal::Token::GLenumToString(GL_EMBOSS_LIGHT_NV));
    EXPECT_EQ(std::string("GL_EMBOSS_MAP_NV"),Regal::Token::GLenumToString(GL_EMBOSS_MAP_NV));
    EXPECT_EQ(std::string("GL_EVAL_FRACTIONAL_TESSELLATION_NV"),Regal::Token::GLenumToString(GL_EVAL_FRACTIONAL_TESSELLATION_NV));
    EXPECT_EQ(std::string("GL_EXPAND_NEGATE_NV"),Regal::Token::GLenumToString(GL_EXPAND_NEGATE_NV));
    EXPECT_EQ(std::string("GL_EXPAND_NORMAL_NV"),Regal::Token::GLenumToString(GL_EXPAND_NORMAL_NV));
    EXPECT_EQ(std::string("GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD"),Regal::Token::GLenumToString(GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD));
    EXPECT_EQ(std::string("GL_EYE_DISTANCE_TO_LINE_SGIS"),Regal::Token::GLenumToString(GL_EYE_DISTANCE_TO_LINE_SGIS));
    EXPECT_EQ(std::string("GL_EYE_DISTANCE_TO_POINT_SGIS"),Regal::Token::GLenumToString(GL_EYE_DISTANCE_TO_POINT_SGIS));
    EXPECT_EQ(std::string("GL_EYE_LINE_SGIS"),Regal::Token::GLenumToString(GL_EYE_LINE_SGIS));
    EXPECT_EQ(std::string("GL_EYE_PLANE_ABSOLUTE_NV"),Regal::Token::GLenumToString(GL_EYE_PLANE_ABSOLUTE_NV));
    EXPECT_EQ(std::string("GL_EYE_POINT_SGIS"),Regal::Token::GLenumToString(GL_EYE_POINT_SGIS));
    EXPECT_EQ(std::string("GL_EYE_RADIAL_NV"),Regal::Token::GLenumToString(GL_EYE_RADIAL_NV));
    EXPECT_EQ(std::string("GL_E_TIMES_F_NV"),Regal::Token::GLenumToString(GL_E_TIMES_F_NV));
    EXPECT_EQ(std::string("GL_FACTOR_MAX_AMD"),Regal::Token::GLenumToString(GL_FACTOR_MAX_AMD));
    EXPECT_EQ(std::string("GL_FACTOR_MIN_AMD"),Regal::Token::GLenumToString(GL_FACTOR_MIN_AMD));
    EXPECT_EQ(std::string("GL_FAILURE_NV"),Regal::Token::GLenumToString(GL_FAILURE_NV));
    EXPECT_EQ(std::string("GL_FENCE_APPLE"),Regal::Token::GLenumToString(GL_FENCE_APPLE));
    EXPECT_EQ(std::string("GL_FENCE_CONDITION_NV"),Regal::Token::GLenumToString(GL_FENCE_CONDITION_NV));
    EXPECT_EQ(std::string("GL_FENCE_STATUS_NV"),Regal::Token::GLenumToString(GL_FENCE_STATUS_NV));
    EXPECT_EQ(std::string("GL_FIELDS_NV"),Regal::Token::GLenumToString(GL_FIELDS_NV));
    EXPECT_EQ(std::string("GL_FIELD_LOWER_NV"),Regal::Token::GLenumToString(GL_FIELD_LOWER_NV));
    EXPECT_EQ(std::string("GL_FIELD_UPPER_NV"),Regal::Token::GLenumToString(GL_FIELD_UPPER_NV));
    EXPECT_EQ(std::string("GL_FILE_NAME_NV"),Regal::Token::GLenumToString(GL_FILE_NAME_NV));
    EXPECT_EQ(std::string("GL_FIRST_TO_REST_NV"),Regal::Token::GLenumToString(GL_FIRST_TO_REST_NV));
    EXPECT_EQ(std::string("GL_FIRST_VERTEX_CONVENTION"),Regal::Token::GLenumToString(GL_FIRST_VERTEX_CONVENTION));
    EXPECT_EQ(std::string("GL_FIRST_VERTEX_CONVENTION"),Regal::Token::GLenumToString(GL_FIRST_VERTEX_CONVENTION_EXT));
    EXPECT_EQ(std::string("GL_FIXED"),Regal::Token::GLenumToString(GL_FIXED));
    EXPECT_EQ(std::string("GL_FIXED_ONLY"),Regal::Token::GLenumToString(GL_FIXED_ONLY));
    EXPECT_EQ(std::string("GL_FIXED_ONLY"),Regal::Token::GLenumToString(GL_FIXED_ONLY_ARB));
    EXPECT_EQ(std::string("GL_FLOAT_CLEAR_COLOR_VALUE_NV"),Regal::Token::GLenumToString(GL_FLOAT_CLEAR_COLOR_VALUE_NV));
    EXPECT_EQ(std::string("GL_FLOAT_RGBA_MODE_NV"),Regal::Token::GLenumToString(GL_FLOAT_RGBA_MODE_NV));
    EXPECT_EQ(std::string("GL_FLOAT_RGBA_NV"),Regal::Token::GLenumToString(GL_FLOAT_RGBA_NV));
    EXPECT_EQ(std::string("GL_FLOAT_RGB_NV"),Regal::Token::GLenumToString(GL_FLOAT_RGB_NV));
    EXPECT_EQ(std::string("GL_FLOAT_RG_NV"),Regal::Token::GLenumToString(GL_FLOAT_RG_NV));
    EXPECT_EQ(std::string("GL_FLOAT_R_NV"),Regal::Token::GLenumToString(GL_FLOAT_R_NV));
    EXPECT_EQ(std::string("GL_FOG_COORD"),Regal::Token::GLenumToString(GL_FOG_COORD));
    EXPECT_EQ(std::string("GL_FOG_COORDINATE"),Regal::Token::GLenumToString(GL_FOG_COORDINATE));
    EXPECT_EQ(std::string("GL_FOG_COORDINATE_ARRAY"),Regal::Token::GLenumToString(GL_FOG_COORDINATE_ARRAY));
    EXPECT_EQ(std::string("GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB));
    EXPECT_EQ(std::string("GL_FOG_COORDINATE_ARRAY"),Regal::Token::GLenumToString(GL_FOG_COORDINATE_ARRAY_EXT));
    EXPECT_EQ(std::string("GL_FOG_COORDINATE_ARRAY_POINTER"),Regal::Token::GLenumToString(GL_FOG_COORDINATE_ARRAY_POINTER));
    EXPECT_EQ(std::string("GL_FOG_COORDINATE_ARRAY_POINTER"),Regal::Token::GLenumToString(GL_FOG_COORDINATE_ARRAY_POINTER_EXT));
    EXPECT_EQ(std::string("GL_FOG_COORDINATE_ARRAY_STRIDE"),Regal::Token::GLenumToString(GL_FOG_COORDINATE_ARRAY_STRIDE));
    EXPECT_EQ(std::string("GL_FOG_COORDINATE_ARRAY_STRIDE"),Regal::Token::GLenumToString(GL_FOG_COORDINATE_ARRAY_STRIDE_EXT));
    EXPECT_EQ(std::string("GL_FOG_COORDINATE_ARRAY_TYPE"),Regal::Token::GLenumToString(GL_FOG_COORDINATE_ARRAY_TYPE));
    EXPECT_EQ(std::string("GL_FOG_COORDINATE_ARRAY_TYPE"),Regal::Token::GLenumToString(GL_FOG_COORDINATE_ARRAY_TYPE_EXT));
    EXPECT_EQ(std::string("GL_FOG_COORDINATE"),Regal::Token::GLenumToString(GL_FOG_COORDINATE_EXT));
    EXPECT_EQ(std::string("GL_FOG_COORDINATE_SOURCE"),Regal::Token::GLenumToString(GL_FOG_COORDINATE_SOURCE));
    EXPECT_EQ(std::string("GL_FOG_COORDINATE_SOURCE"),Regal::Token::GLenumToString(GL_FOG_COORDINATE_SOURCE_EXT));
    EXPECT_EQ(std::string("GL_FOG_COORD_ARRAY"),Regal::Token::GLenumToString(GL_FOG_COORD_ARRAY));
    EXPECT_EQ(std::string("GL_FOG_COORD_ARRAY_ADDRESS_NV"),Regal::Token::GLenumToString(GL_FOG_COORD_ARRAY_ADDRESS_NV));
    EXPECT_EQ(std::string("GL_FOG_COORD_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_FOG_COORD_ARRAY_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_FOG_COORD_ARRAY_LENGTH_NV"),Regal::Token::GLenumToString(GL_FOG_COORD_ARRAY_LENGTH_NV));
    EXPECT_EQ(std::string("GL_FOG_COORD_ARRAY_POINTER"),Regal::Token::GLenumToString(GL_FOG_COORD_ARRAY_POINTER));
    EXPECT_EQ(std::string("GL_FOG_COORD_ARRAY_STRIDE"),Regal::Token::GLenumToString(GL_FOG_COORD_ARRAY_STRIDE));
    EXPECT_EQ(std::string("GL_FOG_COORD_ARRAY_TYPE"),Regal::Token::GLenumToString(GL_FOG_COORD_ARRAY_TYPE));
    EXPECT_EQ(std::string("GL_FOG_COORD_SRC"),Regal::Token::GLenumToString(GL_FOG_COORD_SRC));
    EXPECT_EQ(std::string("GL_FOG_DISTANCE_MODE_NV"),Regal::Token::GLenumToString(GL_FOG_DISTANCE_MODE_NV));
//    EXPECT_EQ(std::string("GL_FOG_FUNC_POINTS_SGIS"),Regal::Token::GLenumToString(GL_FOG_FUNC_POINTS_SGIS));
//    EXPECT_EQ(std::string("GL_FOG_FUNC_SGIS"),Regal::Token::GLenumToString(GL_FOG_FUNC_SGIS));
    EXPECT_EQ(std::string("GL_FOG_OFFSET_SGIX"),Regal::Token::GLenumToString(GL_FOG_OFFSET_SGIX));
    EXPECT_EQ(std::string("GL_FOG_OFFSET_VALUE_SGIX"),Regal::Token::GLenumToString(GL_FOG_OFFSET_VALUE_SGIX));
//    EXPECT_EQ(std::string("GL_FOG_SCALE_SGIX"),Regal::Token::GLenumToString(GL_FOG_SCALE_SGIX));
//    EXPECT_EQ(std::string("GL_FOG_SCALE_VALUE_SGIX"),Regal::Token::GLenumToString(GL_FOG_SCALE_VALUE_SGIX));
    EXPECT_EQ(std::string("GL_FOG_SPECULAR_TEXTURE_WIN"),Regal::Token::GLenumToString(GL_FOG_SPECULAR_TEXTURE_WIN));
//    EXPECT_EQ(std::string("GL_FONT_ASCENDER_NV"),Regal::Token::GLenumToString(GL_FONT_ASCENDER_NV));
//    EXPECT_EQ(std::string("GL_FONT_DESCENDER_NV"),Regal::Token::GLenumToString(GL_FONT_DESCENDER_NV));
//    EXPECT_EQ(std::string("GL_FONT_HAS_KERNING_NV"),Regal::Token::GLenumToString(GL_FONT_HAS_KERNING_NV));
//    EXPECT_EQ(std::string("GL_FONT_HEIGHT_NV"),Regal::Token::GLenumToString(GL_FONT_HEIGHT_NV));
//    EXPECT_EQ(std::string("GL_FONT_MAX_ADVANCE_HEIGHT_NV"),Regal::Token::GLenumToString(GL_FONT_MAX_ADVANCE_HEIGHT_NV));
//    EXPECT_EQ(std::string("GL_FONT_MAX_ADVANCE_WIDTH_NV"),Regal::Token::GLenumToString(GL_FONT_MAX_ADVANCE_WIDTH_NV));
//    EXPECT_EQ(std::string("GL_FONT_UNDERLINE_POSITION_NV"),Regal::Token::GLenumToString(GL_FONT_UNDERLINE_POSITION_NV));
//    EXPECT_EQ(std::string("GL_FONT_UNDERLINE_THICKNESS_NV"),Regal::Token::GLenumToString(GL_FONT_UNDERLINE_THICKNESS_NV));
//    EXPECT_EQ(std::string("GL_FONT_UNITS_PER_EM_NV"),Regal::Token::GLenumToString(GL_FONT_UNITS_PER_EM_NV));
//    EXPECT_EQ(std::string("GL_FONT_X_MAX_BOUNDS_NV"),Regal::Token::GLenumToString(GL_FONT_X_MAX_BOUNDS_NV));
//    EXPECT_EQ(std::string("GL_FONT_X_MIN_BOUNDS_NV"),Regal::Token::GLenumToString(GL_FONT_X_MIN_BOUNDS_NV));
//    EXPECT_EQ(std::string("GL_FONT_Y_MAX_BOUNDS_NV"),Regal::Token::GLenumToString(GL_FONT_Y_MAX_BOUNDS_NV));
//    EXPECT_EQ(std::string("GL_FONT_Y_MIN_BOUNDS_NV"),Regal::Token::GLenumToString(GL_FONT_Y_MIN_BOUNDS_NV));
    EXPECT_EQ(std::string("GL_FORCE_BLUE_TO_ONE_NV"),Regal::Token::GLenumToString(GL_FORCE_BLUE_TO_ONE_NV));
    EXPECT_EQ(std::string("GL_FRACTIONAL_EVEN"),Regal::Token::GLenumToString(GL_FRACTIONAL_EVEN));
    EXPECT_EQ(std::string("GL_FRACTIONAL_ODD"),Regal::Token::GLenumToString(GL_FRACTIONAL_ODD));
    EXPECT_EQ(std::string("GL_FRAGMENT_COLOR_EXT"),Regal::Token::GLenumToString(GL_FRAGMENT_COLOR_EXT));
//    EXPECT_EQ(std::string("GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX"),Regal::Token::GLenumToString(GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX));
//    EXPECT_EQ(std::string("GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX"),Regal::Token::GLenumToString(GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX));
//    EXPECT_EQ(std::string("GL_FRAGMENT_COLOR_MATERIAL_SGIX"),Regal::Token::GLenumToString(GL_FRAGMENT_COLOR_MATERIAL_SGIX));
    EXPECT_EQ(std::string("GL_FRAGMENT_DEPTH"),Regal::Token::GLenumToString(GL_FRAGMENT_DEPTH));
    EXPECT_EQ(std::string("GL_FRAGMENT_DEPTH"),Regal::Token::GLenumToString(GL_FRAGMENT_DEPTH_EXT));
//    EXPECT_EQ(std::string("GL_FRAGMENT_LIGHTING_SGIX"),Regal::Token::GLenumToString(GL_FRAGMENT_LIGHTING_SGIX));
//    EXPECT_EQ(std::string("GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX"),Regal::Token::GLenumToString(GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX));
//    EXPECT_EQ(std::string("GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX"),Regal::Token::GLenumToString(GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX));
//    EXPECT_EQ(std::string("GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX"),Regal::Token::GLenumToString(GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX));
//    EXPECT_EQ(std::string("GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX"),Regal::Token::GLenumToString(GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX));
    EXPECT_EQ(std::string("GL_FRAGMENT_MATERIAL_EXT"),Regal::Token::GLenumToString(GL_FRAGMENT_MATERIAL_EXT));
    EXPECT_EQ(std::string("GL_FRAGMENT_NORMAL_EXT"),Regal::Token::GLenumToString(GL_FRAGMENT_NORMAL_EXT));
    EXPECT_EQ(std::string("GL_FRAGMENT_PROGRAM"),Regal::Token::GLenumToString(GL_FRAGMENT_PROGRAM_ARB));
    EXPECT_EQ(std::string("GL_FRAGMENT_PROGRAM_BINDING_NV"),Regal::Token::GLenumToString(GL_FRAGMENT_PROGRAM_BINDING_NV));
    EXPECT_EQ(std::string("GL_FRAGMENT_PROGRAM_NV"),Regal::Token::GLenumToString(GL_FRAGMENT_PROGRAM_NV));
    EXPECT_EQ(std::string("GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV"),Regal::Token::GLenumToString(GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV));
    EXPECT_EQ(std::string("GL_FRAGMENT_SHADER"),Regal::Token::GLenumToString(GL_FRAGMENT_SHADER));
    EXPECT_EQ(std::string("GL_FRAGMENT_SHADER"),Regal::Token::GLenumToString(GL_FRAGMENT_SHADER_ARB));
    EXPECT_EQ(std::string("GL_FRAGMENT_SHADER_ATI"),Regal::Token::GLenumToString(GL_FRAGMENT_SHADER_ATI));
    EXPECT_EQ(std::string("GL_FRAGMENT_SHADER_DERIVATIVE_HINT"),Regal::Token::GLenumToString(GL_FRAGMENT_SHADER_DERIVATIVE_HINT));
    EXPECT_EQ(std::string("GL_FRAGMENT_SHADER_DERIVATIVE_HINT"),Regal::Token::GLenumToString(GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER"),Regal::Token::GLenumToString(GL_FRAMEBUFFER));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_LAYERED"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_LAYERED));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_LAYERED"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_LAYERED"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_BINDING"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_BINDING));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_BINDING"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_BINDING_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_COMPLETE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_COMPLETE));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_COMPLETE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_COMPLETE_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_DEFAULT"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_DEFAULT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_SRGB"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_SRGB));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_SRGB_CAPABLE_EXT"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_SRGB_CAPABLE_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_SRGB"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_SRGB_EXT));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_UNDEFINED"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_UNDEFINED));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_UNSUPPORTED"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_UNSUPPORTED));
    EXPECT_EQ(std::string("GL_FRAMEBUFFER_UNSUPPORTED"),Regal::Token::GLenumToString(GL_FRAMEBUFFER_UNSUPPORTED_EXT));
//    EXPECT_EQ(std::string("GL_FRAMEZOOM_FACTOR_SGIX"),Regal::Token::GLenumToString(GL_FRAMEZOOM_FACTOR_SGIX));
//    EXPECT_EQ(std::string("GL_FRAMEZOOM_SGIX"),Regal::Token::GLenumToString(GL_FRAMEZOOM_SGIX));
    EXPECT_EQ(std::string("GL_FRAME_NV"),Regal::Token::GLenumToString(GL_FRAME_NV));
    EXPECT_EQ(std::string("GL_FULL_RANGE_EXT"),Regal::Token::GLenumToString(GL_FULL_RANGE_EXT));
    EXPECT_EQ(std::string("GL_FULL_STIPPLE_HINT_PGI"),Regal::Token::GLenumToString(GL_FULL_STIPPLE_HINT_PGI));
    EXPECT_EQ(std::string("GL_FUNC_ADD"),Regal::Token::GLenumToString(GL_FUNC_ADD));
    EXPECT_EQ(std::string("GL_FUNC_ADD"),Regal::Token::GLenumToString(GL_FUNC_ADD_EXT));
    EXPECT_EQ(std::string("GL_FUNC_REVERSE_SUBTRACT"),Regal::Token::GLenumToString(GL_FUNC_REVERSE_SUBTRACT));
    EXPECT_EQ(std::string("GL_FUNC_REVERSE_SUBTRACT"),Regal::Token::GLenumToString(GL_FUNC_REVERSE_SUBTRACT_EXT));
    EXPECT_EQ(std::string("GL_FUNC_SUBTRACT"),Regal::Token::GLenumToString(GL_FUNC_SUBTRACT));
    EXPECT_EQ(std::string("GL_FUNC_SUBTRACT"),Regal::Token::GLenumToString(GL_FUNC_SUBTRACT_EXT));
    EXPECT_EQ(std::string("GL_GENERATE_MIPMAP"),Regal::Token::GLenumToString(GL_GENERATE_MIPMAP));
    EXPECT_EQ(std::string("GL_GENERATE_MIPMAP_HINT"),Regal::Token::GLenumToString(GL_GENERATE_MIPMAP_HINT));
    EXPECT_EQ(std::string("GL_GENERATE_MIPMAP_HINT"),Regal::Token::GLenumToString(GL_GENERATE_MIPMAP_HINT_SGIS));
    EXPECT_EQ(std::string("GL_GENERATE_MIPMAP"),Regal::Token::GLenumToString(GL_GENERATE_MIPMAP_SGIS));
    EXPECT_EQ(std::string("GL_GENERIC_ATTRIB_NV"),Regal::Token::GLenumToString(GL_GENERIC_ATTRIB_NV));
    EXPECT_EQ(std::string("GL_GEOMETRY_INPUT_TYPE"),Regal::Token::GLenumToString(GL_GEOMETRY_INPUT_TYPE));
    EXPECT_EQ(std::string("GL_GEOMETRY_INPUT_TYPE"),Regal::Token::GLenumToString(GL_GEOMETRY_INPUT_TYPE_ARB));
    EXPECT_EQ(std::string("GL_GEOMETRY_INPUT_TYPE"),Regal::Token::GLenumToString(GL_GEOMETRY_INPUT_TYPE_EXT));
    EXPECT_EQ(std::string("GL_GEOMETRY_OUTPUT_TYPE"),Regal::Token::GLenumToString(GL_GEOMETRY_OUTPUT_TYPE));
    EXPECT_EQ(std::string("GL_GEOMETRY_OUTPUT_TYPE"),Regal::Token::GLenumToString(GL_GEOMETRY_OUTPUT_TYPE_ARB));
    EXPECT_EQ(std::string("GL_GEOMETRY_OUTPUT_TYPE"),Regal::Token::GLenumToString(GL_GEOMETRY_OUTPUT_TYPE_EXT));
    EXPECT_EQ(std::string("GL_GEOMETRY_PROGRAM_NV"),Regal::Token::GLenumToString(GL_GEOMETRY_PROGRAM_NV));
    EXPECT_EQ(std::string("GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV"),Regal::Token::GLenumToString(GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV));
    EXPECT_EQ(std::string("GL_GEOMETRY_SHADER"),Regal::Token::GLenumToString(GL_GEOMETRY_SHADER));
    EXPECT_EQ(std::string("GL_GEOMETRY_SHADER"),Regal::Token::GLenumToString(GL_GEOMETRY_SHADER_ARB));
    EXPECT_EQ(std::string("GL_GEOMETRY_SHADER"),Regal::Token::GLenumToString(GL_GEOMETRY_SHADER_EXT));
    EXPECT_EQ(std::string("GL_GEOMETRY_SHADER_INVOCATIONS"),Regal::Token::GLenumToString(GL_GEOMETRY_SHADER_INVOCATIONS));
    EXPECT_EQ(std::string("GL_GEOMETRY_VERTICES_OUT"),Regal::Token::GLenumToString(GL_GEOMETRY_VERTICES_OUT));
    EXPECT_EQ(std::string("GL_GEOMETRY_VERTICES_OUT"),Regal::Token::GLenumToString(GL_GEOMETRY_VERTICES_OUT_ARB));
    EXPECT_EQ(std::string("GL_GEOMETRY_VERTICES_OUT"),Regal::Token::GLenumToString(GL_GEOMETRY_VERTICES_OUT_EXT));
    EXPECT_EQ(std::string("GL_GLOBAL_ALPHA_FACTOR_SUN"),Regal::Token::GLenumToString(GL_GLOBAL_ALPHA_FACTOR_SUN));
    EXPECT_EQ(std::string("GL_GLOBAL_ALPHA_SUN"),Regal::Token::GLenumToString(GL_GLOBAL_ALPHA_SUN));
//    EXPECT_EQ(std::string("GL_GLYPH_HAS_KERNING_NV"),Regal::Token::GLenumToString(GL_GLYPH_HAS_KERNING_NV));
    EXPECT_EQ(std::string("GL_GPU_ADDRESS_NV"),Regal::Token::GLenumToString(GL_GPU_ADDRESS_NV));
    EXPECT_EQ(std::string("GL_GREEN_INTEGER"),Regal::Token::GLenumToString(GL_GREEN_INTEGER));
    EXPECT_EQ(std::string("GL_GREEN_INTEGER"),Regal::Token::GLenumToString(GL_GREEN_INTEGER_EXT));
    EXPECT_EQ(std::string("GL_GREEN_MAX_CLAMP_INGR"),Regal::Token::GLenumToString(GL_GREEN_MAX_CLAMP_INGR));
    EXPECT_EQ(std::string("GL_GREEN_MIN_CLAMP_INGR"),Regal::Token::GLenumToString(GL_GREEN_MIN_CLAMP_INGR));
    EXPECT_EQ(std::string("GL_GUILTY_CONTEXT_RESET_ARB"),Regal::Token::GLenumToString(GL_GUILTY_CONTEXT_RESET_ARB));
    EXPECT_EQ(std::string("GL_HALF_APPLE"),Regal::Token::GLenumToString(GL_HALF_APPLE));
    EXPECT_EQ(std::string("GL_HALF_BIAS_NEGATE_NV"),Regal::Token::GLenumToString(GL_HALF_BIAS_NEGATE_NV));
    EXPECT_EQ(std::string("GL_HALF_BIAS_NORMAL_NV"),Regal::Token::GLenumToString(GL_HALF_BIAS_NORMAL_NV));
    EXPECT_EQ(std::string("GL_HALF_FLOAT"),Regal::Token::GLenumToString(GL_HALF_FLOAT));
    EXPECT_EQ(std::string("GL_HALF_FLOAT"),Regal::Token::GLenumToString(GL_HALF_FLOAT_ARB));
    EXPECT_EQ(std::string("GL_HALF_FLOAT_NV"),Regal::Token::GLenumToString(GL_HALF_FLOAT_NV));
    EXPECT_EQ(std::string("GL_HIGH_FLOAT"),Regal::Token::GLenumToString(GL_HIGH_FLOAT));
    EXPECT_EQ(std::string("GL_HIGH_INT"),Regal::Token::GLenumToString(GL_HIGH_INT));
    EXPECT_EQ(std::string("GL_HILO_NV"),Regal::Token::GLenumToString(GL_HILO_NV));
    EXPECT_EQ(std::string("GL_HISTOGRAM"),Regal::Token::GLenumToString(GL_HISTOGRAM));
    EXPECT_EQ(std::string("GL_HISTOGRAM_ALPHA_SIZE"),Regal::Token::GLenumToString(GL_HISTOGRAM_ALPHA_SIZE));
    EXPECT_EQ(std::string("GL_HISTOGRAM_ALPHA_SIZE"),Regal::Token::GLenumToString(GL_HISTOGRAM_ALPHA_SIZE_EXT));
    EXPECT_EQ(std::string("GL_HISTOGRAM_BLUE_SIZE"),Regal::Token::GLenumToString(GL_HISTOGRAM_BLUE_SIZE));
    EXPECT_EQ(std::string("GL_HISTOGRAM_BLUE_SIZE"),Regal::Token::GLenumToString(GL_HISTOGRAM_BLUE_SIZE_EXT));
    EXPECT_EQ(std::string("GL_HISTOGRAM"),Regal::Token::GLenumToString(GL_HISTOGRAM_EXT));
    EXPECT_EQ(std::string("GL_HISTOGRAM_FORMAT"),Regal::Token::GLenumToString(GL_HISTOGRAM_FORMAT));
    EXPECT_EQ(std::string("GL_HISTOGRAM_FORMAT"),Regal::Token::GLenumToString(GL_HISTOGRAM_FORMAT_EXT));
    EXPECT_EQ(std::string("GL_HISTOGRAM_GREEN_SIZE"),Regal::Token::GLenumToString(GL_HISTOGRAM_GREEN_SIZE));
    EXPECT_EQ(std::string("GL_HISTOGRAM_GREEN_SIZE"),Regal::Token::GLenumToString(GL_HISTOGRAM_GREEN_SIZE_EXT));
    EXPECT_EQ(std::string("GL_HISTOGRAM_LUMINANCE_SIZE"),Regal::Token::GLenumToString(GL_HISTOGRAM_LUMINANCE_SIZE));
    EXPECT_EQ(std::string("GL_HISTOGRAM_LUMINANCE_SIZE"),Regal::Token::GLenumToString(GL_HISTOGRAM_LUMINANCE_SIZE_EXT));
    EXPECT_EQ(std::string("GL_HISTOGRAM_RED_SIZE"),Regal::Token::GLenumToString(GL_HISTOGRAM_RED_SIZE));
    EXPECT_EQ(std::string("GL_HISTOGRAM_RED_SIZE"),Regal::Token::GLenumToString(GL_HISTOGRAM_RED_SIZE_EXT));
    EXPECT_EQ(std::string("GL_HISTOGRAM_SINK"),Regal::Token::GLenumToString(GL_HISTOGRAM_SINK));
    EXPECT_EQ(std::string("GL_HISTOGRAM_SINK"),Regal::Token::GLenumToString(GL_HISTOGRAM_SINK_EXT));
    EXPECT_EQ(std::string("GL_HISTOGRAM_WIDTH"),Regal::Token::GLenumToString(GL_HISTOGRAM_WIDTH));
    EXPECT_EQ(std::string("GL_HISTOGRAM_WIDTH"),Regal::Token::GLenumToString(GL_HISTOGRAM_WIDTH_EXT));
    EXPECT_EQ(std::string("GL_HI_BIAS_NV"),Regal::Token::GLenumToString(GL_HI_BIAS_NV));
    EXPECT_EQ(std::string("GL_HI_SCALE_NV"),Regal::Token::GLenumToString(GL_HI_SCALE_NV));
    EXPECT_EQ(std::string("GL_HORIZONTAL_LINE_TO_NV"),Regal::Token::GLenumToString(GL_HORIZONTAL_LINE_TO_NV));
    EXPECT_EQ(std::string("GL_IDENTITY_NV"),Regal::Token::GLenumToString(GL_IDENTITY_NV));
//    EXPECT_EQ(std::string("GL_IGNORE_BORDER_HP"),Regal::Token::GLenumToString(GL_IGNORE_BORDER_HP));
    EXPECT_EQ(std::string("GL_IMAGE_BINDING_ACCESS"),Regal::Token::GLenumToString(GL_IMAGE_BINDING_ACCESS));
    EXPECT_EQ(std::string("GL_IMAGE_BINDING_ACCESS"),Regal::Token::GLenumToString(GL_IMAGE_BINDING_ACCESS_EXT));
    EXPECT_EQ(std::string("GL_IMAGE_BINDING_FORMAT"),Regal::Token::GLenumToString(GL_IMAGE_BINDING_FORMAT));
    EXPECT_EQ(std::string("GL_IMAGE_BINDING_FORMAT"),Regal::Token::GLenumToString(GL_IMAGE_BINDING_FORMAT_EXT));
    EXPECT_EQ(std::string("GL_IMAGE_BINDING_LAYER"),Regal::Token::GLenumToString(GL_IMAGE_BINDING_LAYER));
    EXPECT_EQ(std::string("GL_IMAGE_BINDING_LAYERED"),Regal::Token::GLenumToString(GL_IMAGE_BINDING_LAYERED));
    EXPECT_EQ(std::string("GL_IMAGE_BINDING_LAYERED"),Regal::Token::GLenumToString(GL_IMAGE_BINDING_LAYERED_EXT));
    EXPECT_EQ(std::string("GL_IMAGE_BINDING_LAYER"),Regal::Token::GLenumToString(GL_IMAGE_BINDING_LAYER_EXT));
    EXPECT_EQ(std::string("GL_IMAGE_BINDING_LEVEL"),Regal::Token::GLenumToString(GL_IMAGE_BINDING_LEVEL));
    EXPECT_EQ(std::string("GL_IMAGE_BINDING_LEVEL"),Regal::Token::GLenumToString(GL_IMAGE_BINDING_LEVEL_EXT));
    EXPECT_EQ(std::string("GL_IMAGE_BINDING_NAME"),Regal::Token::GLenumToString(GL_IMAGE_BINDING_NAME));
    EXPECT_EQ(std::string("GL_IMAGE_BINDING_NAME"),Regal::Token::GLenumToString(GL_IMAGE_BINDING_NAME_EXT));
    EXPECT_EQ(std::string("GL_IMAGE_BUFFER"),Regal::Token::GLenumToString(GL_IMAGE_BUFFER));
    EXPECT_EQ(std::string("GL_IMAGE_BUFFER"),Regal::Token::GLenumToString(GL_IMAGE_BUFFER_EXT));
    EXPECT_EQ(std::string("GL_IMAGE_CUBE"),Regal::Token::GLenumToString(GL_IMAGE_CUBE));
    EXPECT_EQ(std::string("GL_IMAGE_CUBE"),Regal::Token::GLenumToString(GL_IMAGE_CUBE_EXT));
    EXPECT_EQ(std::string("GL_IMAGE_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_IMAGE_CUBE_MAP_ARRAY));
    EXPECT_EQ(std::string("GL_IMAGE_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_IMAGE_CUBE_MAP_ARRAY_EXT));
//    EXPECT_EQ(std::string("GL_IMAGE_CUBIC_WEIGHT_HP"),Regal::Token::GLenumToString(GL_IMAGE_CUBIC_WEIGHT_HP));
    EXPECT_EQ(std::string("GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS"),Regal::Token::GLenumToString(GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS));
    EXPECT_EQ(std::string("GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE"),Regal::Token::GLenumToString(GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE));
    EXPECT_EQ(std::string("GL_IMAGE_FORMAT_COMPATIBILITY_TYPE"),Regal::Token::GLenumToString(GL_IMAGE_FORMAT_COMPATIBILITY_TYPE));
//    EXPECT_EQ(std::string("GL_IMAGE_MAG_FILTER_HP"),Regal::Token::GLenumToString(GL_IMAGE_MAG_FILTER_HP));
//    EXPECT_EQ(std::string("GL_IMAGE_MIN_FILTER_HP"),Regal::Token::GLenumToString(GL_IMAGE_MIN_FILTER_HP));
//    EXPECT_EQ(std::string("GL_IMAGE_ROTATE_ANGLE_HP"),Regal::Token::GLenumToString(GL_IMAGE_ROTATE_ANGLE_HP));
//    EXPECT_EQ(std::string("GL_IMAGE_ROTATE_ORIGIN_X_HP"),Regal::Token::GLenumToString(GL_IMAGE_ROTATE_ORIGIN_X_HP));
//    EXPECT_EQ(std::string("GL_IMAGE_ROTATE_ORIGIN_Y_HP"),Regal::Token::GLenumToString(GL_IMAGE_ROTATE_ORIGIN_Y_HP));
//    EXPECT_EQ(std::string("GL_IMAGE_SCALE_X_HP"),Regal::Token::GLenumToString(GL_IMAGE_SCALE_X_HP));
//    EXPECT_EQ(std::string("GL_IMAGE_SCALE_Y_HP"),Regal::Token::GLenumToString(GL_IMAGE_SCALE_Y_HP));
//    EXPECT_EQ(std::string("GL_IMAGE_TRANSLATE_X_HP"),Regal::Token::GLenumToString(GL_IMAGE_TRANSLATE_X_HP));
//    EXPECT_EQ(std::string("GL_IMAGE_TRANSLATE_Y_HP"),Regal::Token::GLenumToString(GL_IMAGE_TRANSLATE_Y_HP));
    EXPECT_EQ(std::string("GL_IMPLEMENTATION_COLOR_READ_FORMAT"),Regal::Token::GLenumToString(GL_IMPLEMENTATION_COLOR_READ_FORMAT));
    EXPECT_EQ(std::string("GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES"),Regal::Token::GLenumToString(GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES));
    EXPECT_EQ(std::string("GL_IMPLEMENTATION_COLOR_READ_TYPE"),Regal::Token::GLenumToString(GL_IMPLEMENTATION_COLOR_READ_TYPE));
    EXPECT_EQ(std::string("GL_IMPLEMENTATION_COLOR_READ_TYPE_OES"),Regal::Token::GLenumToString(GL_IMPLEMENTATION_COLOR_READ_TYPE_OES));
    EXPECT_EQ(std::string("GL_INCR_WRAP"),Regal::Token::GLenumToString(GL_INCR_WRAP));
    EXPECT_EQ(std::string("GL_INCR_WRAP"),Regal::Token::GLenumToString(GL_INCR_WRAP_EXT));
    EXPECT_EQ(std::string("GL_INDEX"),Regal::Token::GLenumToString(GL_INDEX));
    EXPECT_EQ(std::string("GL_INDEX_ARRAY_ADDRESS_NV"),Regal::Token::GLenumToString(GL_INDEX_ARRAY_ADDRESS_NV));
    EXPECT_EQ(std::string("GL_INDEX_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_INDEX_ARRAY_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_INDEX_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_INDEX_ARRAY_BUFFER_BINDING_ARB));
    EXPECT_EQ(std::string("GL_INDEX_ARRAY_COUNT_EXT"),Regal::Token::GLenumToString(GL_INDEX_ARRAY_COUNT_EXT));
    EXPECT_EQ(std::string("GL_INDEX_ARRAY_EXT"),Regal::Token::GLenumToString(GL_INDEX_ARRAY_EXT));
    EXPECT_EQ(std::string("GL_INDEX_ARRAY_LENGTH_NV"),Regal::Token::GLenumToString(GL_INDEX_ARRAY_LENGTH_NV));
    EXPECT_EQ(std::string("GL_INDEX_ARRAY_POINTER_EXT"),Regal::Token::GLenumToString(GL_INDEX_ARRAY_POINTER_EXT));
    EXPECT_EQ(std::string("GL_INDEX_ARRAY_STRIDE_EXT"),Regal::Token::GLenumToString(GL_INDEX_ARRAY_STRIDE_EXT));
    EXPECT_EQ(std::string("GL_INDEX_ARRAY_TYPE_EXT"),Regal::Token::GLenumToString(GL_INDEX_ARRAY_TYPE_EXT));
//    EXPECT_EQ(std::string("GL_INDEX_MATERIAL_EXT"),Regal::Token::GLenumToString(GL_INDEX_MATERIAL_EXT));
//    EXPECT_EQ(std::string("GL_INDEX_MATERIAL_FACE_EXT"),Regal::Token::GLenumToString(GL_INDEX_MATERIAL_FACE_EXT));
//    EXPECT_EQ(std::string("GL_INDEX_MATERIAL_PARAMETER_EXT"),Regal::Token::GLenumToString(GL_INDEX_MATERIAL_PARAMETER_EXT));
//    EXPECT_EQ(std::string("GL_INDEX_TEST_EXT"),Regal::Token::GLenumToString(GL_INDEX_TEST_EXT));
//    EXPECT_EQ(std::string("GL_INDEX_TEST_FUNC_EXT"),Regal::Token::GLenumToString(GL_INDEX_TEST_FUNC_EXT));
//    EXPECT_EQ(std::string("GL_INDEX_TEST_REF_EXT"),Regal::Token::GLenumToString(GL_INDEX_TEST_REF_EXT));
    EXPECT_EQ(std::string("GL_INFO_LOG_LENGTH"),Regal::Token::GLenumToString(GL_INFO_LOG_LENGTH));
    EXPECT_EQ(std::string("GL_INNOCENT_CONTEXT_RESET_ARB"),Regal::Token::GLenumToString(GL_INNOCENT_CONTEXT_RESET_ARB));
//    EXPECT_EQ(std::string("GL_INSTRUMENT_BUFFER_POINTER_SGIX"),Regal::Token::GLenumToString(GL_INSTRUMENT_BUFFER_POINTER_SGIX));
//    EXPECT_EQ(std::string("GL_INSTRUMENT_MEASUREMENTS_SGIX"),Regal::Token::GLenumToString(GL_INSTRUMENT_MEASUREMENTS_SGIX));
    EXPECT_EQ(std::string("GL_INTENSITY_EXT"),Regal::Token::GLenumToString(GL_INTENSITY_EXT));
    EXPECT_EQ(std::string("GL_INTENSITY_SNORM"),Regal::Token::GLenumToString(GL_INTENSITY_SNORM));
    EXPECT_EQ(std::string("GL_INTERLACE_OML"),Regal::Token::GLenumToString(GL_INTERLACE_OML));
    EXPECT_EQ(std::string("GL_INTERLACE_READ_INGR"),Regal::Token::GLenumToString(GL_INTERLACE_READ_INGR));
    EXPECT_EQ(std::string("GL_INTERLACE_READ_OML"),Regal::Token::GLenumToString(GL_INTERLACE_READ_OML));
    EXPECT_EQ(std::string("GL_INTERLACE_SGIX"),Regal::Token::GLenumToString(GL_INTERLACE_SGIX));
    EXPECT_EQ(std::string("GL_INTERLEAVED_ATTRIBS"),Regal::Token::GLenumToString(GL_INTERLEAVED_ATTRIBS));
    EXPECT_EQ(std::string("GL_INTERLEAVED_ATTRIBS"),Regal::Token::GLenumToString(GL_INTERLEAVED_ATTRIBS_EXT));
    EXPECT_EQ(std::string("GL_INTERLEAVED_ATTRIBS_NV"),Regal::Token::GLenumToString(GL_INTERLEAVED_ATTRIBS_NV));
    EXPECT_EQ(std::string("GL_INTERPOLATE"),Regal::Token::GLenumToString(GL_INTERPOLATE));
    EXPECT_EQ(std::string("GL_INTERPOLATE"),Regal::Token::GLenumToString(GL_INTERPOLATE_ARB));
    EXPECT_EQ(std::string("GL_INTERPOLATE"),Regal::Token::GLenumToString(GL_INTERPOLATE_EXT));
    EXPECT_EQ(std::string("GL_INT_IMAGE_BUFFER"),Regal::Token::GLenumToString(GL_INT_IMAGE_BUFFER));
    EXPECT_EQ(std::string("GL_INT_IMAGE_BUFFER"),Regal::Token::GLenumToString(GL_INT_IMAGE_BUFFER_EXT));
    EXPECT_EQ(std::string("GL_INT_IMAGE_CUBE"),Regal::Token::GLenumToString(GL_INT_IMAGE_CUBE));
    EXPECT_EQ(std::string("GL_INT_IMAGE_CUBE"),Regal::Token::GLenumToString(GL_INT_IMAGE_CUBE_EXT));
    EXPECT_EQ(std::string("GL_INT_IMAGE_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_INT_IMAGE_CUBE_MAP_ARRAY));
    EXPECT_EQ(std::string("GL_INT_IMAGE_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT));
    EXPECT_EQ(std::string("GL_INT_SAMPLER_BUFFER"),Regal::Token::GLenumToString(GL_INT_SAMPLER_BUFFER));
    EXPECT_EQ(std::string("GL_INT_SAMPLER_BUFFER_AMD"),Regal::Token::GLenumToString(GL_INT_SAMPLER_BUFFER_AMD));
    EXPECT_EQ(std::string("GL_INT_SAMPLER_BUFFER"),Regal::Token::GLenumToString(GL_INT_SAMPLER_BUFFER_EXT));
    EXPECT_EQ(std::string("GL_INT_SAMPLER_CUBE"),Regal::Token::GLenumToString(GL_INT_SAMPLER_CUBE));
    EXPECT_EQ(std::string("GL_INT_SAMPLER_CUBE"),Regal::Token::GLenumToString(GL_INT_SAMPLER_CUBE_EXT));
    EXPECT_EQ(std::string("GL_INT_SAMPLER_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_INT_SAMPLER_CUBE_MAP_ARRAY));
    EXPECT_EQ(std::string("GL_INT_SAMPLER_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB));
    EXPECT_EQ(std::string("GL_INT_SAMPLER_RENDERBUFFER_NV"),Regal::Token::GLenumToString(GL_INT_SAMPLER_RENDERBUFFER_NV));
    EXPECT_EQ(std::string("GL_INVALID_FRAMEBUFFER_OPERATION"),Regal::Token::GLenumToString(GL_INVALID_FRAMEBUFFER_OPERATION));
    EXPECT_EQ(std::string("GL_INVALID_FRAMEBUFFER_OPERATION"),Regal::Token::GLenumToString(GL_INVALID_FRAMEBUFFER_OPERATION_EXT));

    /* EXPECT_EQ(std::string("GL_INVALID_INDEX"),Regal::Token::GLenumToString(GL_INVALID_INDEX)); */

    EXPECT_EQ(std::string("GL_INVARIANT_DATATYPE_EXT"),Regal::Token::GLenumToString(GL_INVARIANT_DATATYPE_EXT));
    EXPECT_EQ(std::string("GL_INVARIANT_EXT"),Regal::Token::GLenumToString(GL_INVARIANT_EXT));
    EXPECT_EQ(std::string("GL_INVARIANT_VALUE_EXT"),Regal::Token::GLenumToString(GL_INVARIANT_VALUE_EXT));
    EXPECT_EQ(std::string("GL_INVERSE_NV"),Regal::Token::GLenumToString(GL_INVERSE_NV));
    EXPECT_EQ(std::string("GL_INVERSE_TRANSPOSE_NV"),Regal::Token::GLenumToString(GL_INVERSE_TRANSPOSE_NV));
    EXPECT_EQ(std::string("GL_INVERTED_SCREEN_W_REND"),Regal::Token::GLenumToString(GL_INVERTED_SCREEN_W_REND));
    EXPECT_EQ(std::string("GL_ISOLINES"),Regal::Token::GLenumToString(GL_ISOLINES));
    EXPECT_EQ(std::string("GL_LARGE_CCW_ARC_TO_NV"),Regal::Token::GLenumToString(GL_LARGE_CCW_ARC_TO_NV));
    EXPECT_EQ(std::string("GL_LARGE_CW_ARC_TO_NV"),Regal::Token::GLenumToString(GL_LARGE_CW_ARC_TO_NV));
    EXPECT_EQ(std::string("GL_LAST_VERTEX_CONVENTION"),Regal::Token::GLenumToString(GL_LAST_VERTEX_CONVENTION));
    EXPECT_EQ(std::string("GL_LAST_VERTEX_CONVENTION"),Regal::Token::GLenumToString(GL_LAST_VERTEX_CONVENTION_EXT));
    EXPECT_EQ(std::string("GL_LAST_VIDEO_CAPTURE_STATUS_NV"),Regal::Token::GLenumToString(GL_LAST_VIDEO_CAPTURE_STATUS_NV));
//    EXPECT_EQ(std::string("GL_LAYER_NV"),Regal::Token::GLenumToString(GL_LAYER_NV));
    EXPECT_EQ(std::string("GL_LAYER_PROVOKING_VERTEX"),Regal::Token::GLenumToString(GL_LAYER_PROVOKING_VERTEX));
    EXPECT_EQ(std::string("GL_LERP_ATI"),Regal::Token::GLenumToString(GL_LERP_ATI));
//    EXPECT_EQ(std::string("GL_LIGHT_ENV_MODE_SGIX"),Regal::Token::GLenumToString(GL_LIGHT_ENV_MODE_SGIX));
    EXPECT_EQ(std::string("GL_LIGHT_MODEL_COLOR_CONTROL"),Regal::Token::GLenumToString(GL_LIGHT_MODEL_COLOR_CONTROL));
    EXPECT_EQ(std::string("GL_LIGHT_MODEL_COLOR_CONTROL"),Regal::Token::GLenumToString(GL_LIGHT_MODEL_COLOR_CONTROL_EXT));
    EXPECT_EQ(std::string("GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE"),Regal::Token::GLenumToString(GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE));
//    EXPECT_EQ(std::string("GL_LINEAR_CLIPMAP_LINEAR_SGIX"),Regal::Token::GLenumToString(GL_LINEAR_CLIPMAP_LINEAR_SGIX));
//    EXPECT_EQ(std::string("GL_LINEAR_CLIPMAP_NEAREST_SGIX"),Regal::Token::GLenumToString(GL_LINEAR_CLIPMAP_NEAREST_SGIX));
    EXPECT_EQ(std::string("GL_LINEAR_DETAIL_ALPHA_SGIS"),Regal::Token::GLenumToString(GL_LINEAR_DETAIL_ALPHA_SGIS));
    EXPECT_EQ(std::string("GL_LINEAR_DETAIL_COLOR_SGIS"),Regal::Token::GLenumToString(GL_LINEAR_DETAIL_COLOR_SGIS));
    EXPECT_EQ(std::string("GL_LINEAR_DETAIL_SGIS"),Regal::Token::GLenumToString(GL_LINEAR_DETAIL_SGIS));
//    EXPECT_EQ(std::string("GL_LINEAR_SHARPEN_ALPHA_SGIS"),Regal::Token::GLenumToString(GL_LINEAR_SHARPEN_ALPHA_SGIS));
//    EXPECT_EQ(std::string("GL_LINEAR_SHARPEN_COLOR_SGIS"),Regal::Token::GLenumToString(GL_LINEAR_SHARPEN_COLOR_SGIS));
//    EXPECT_EQ(std::string("GL_LINEAR_SHARPEN_SGIS"),Regal::Token::GLenumToString(GL_LINEAR_SHARPEN_SGIS));
    EXPECT_EQ(std::string("GL_LINES_ADJACENCY"),Regal::Token::GLenumToString(GL_LINES_ADJACENCY));
    EXPECT_EQ(std::string("GL_LINES_ADJACENCY"),Regal::Token::GLenumToString(GL_LINES_ADJACENCY_ARB));
    EXPECT_EQ(std::string("GL_LINES_ADJACENCY"),Regal::Token::GLenumToString(GL_LINES_ADJACENCY_EXT));
    EXPECT_EQ(std::string("GL_LINE_STRIP_ADJACENCY"),Regal::Token::GLenumToString(GL_LINE_STRIP_ADJACENCY));
    EXPECT_EQ(std::string("GL_LINE_STRIP_ADJACENCY"),Regal::Token::GLenumToString(GL_LINE_STRIP_ADJACENCY_ARB));
    EXPECT_EQ(std::string("GL_LINE_STRIP_ADJACENCY"),Regal::Token::GLenumToString(GL_LINE_STRIP_ADJACENCY_EXT));
    EXPECT_EQ(std::string("GL_LINE_TO_NV"),Regal::Token::GLenumToString(GL_LINE_TO_NV));
    EXPECT_EQ(std::string("GL_LINK_STATUS"),Regal::Token::GLenumToString(GL_LINK_STATUS));
//    EXPECT_EQ(std::string("GL_LIST_PRIORITY_SGIX"),Regal::Token::GLenumToString(GL_LIST_PRIORITY_SGIX));
    EXPECT_EQ(std::string("GL_LOCAL_CONSTANT_DATATYPE_EXT"),Regal::Token::GLenumToString(GL_LOCAL_CONSTANT_DATATYPE_EXT));
    EXPECT_EQ(std::string("GL_LOCAL_CONSTANT_EXT"),Regal::Token::GLenumToString(GL_LOCAL_CONSTANT_EXT));
    EXPECT_EQ(std::string("GL_LOCAL_CONSTANT_VALUE_EXT"),Regal::Token::GLenumToString(GL_LOCAL_CONSTANT_VALUE_EXT));
    EXPECT_EQ(std::string("GL_LOCAL_EXT"),Regal::Token::GLenumToString(GL_LOCAL_EXT));
    EXPECT_EQ(std::string("GL_LOSE_CONTEXT_ON_RESET_ARB"),Regal::Token::GLenumToString(GL_LOSE_CONTEXT_ON_RESET_ARB));
    EXPECT_EQ(std::string("GL_LOWER_LEFT"),Regal::Token::GLenumToString(GL_LOWER_LEFT));
    EXPECT_EQ(std::string("GL_LOW_FLOAT"),Regal::Token::GLenumToString(GL_LOW_FLOAT));
    EXPECT_EQ(std::string("GL_LOW_INT"),Regal::Token::GLenumToString(GL_LOW_INT));
    EXPECT_EQ(std::string("GL_LO_BIAS_NV"),Regal::Token::GLenumToString(GL_LO_BIAS_NV));
    EXPECT_EQ(std::string("GL_LO_SCALE_NV"),Regal::Token::GLenumToString(GL_LO_SCALE_NV));
    EXPECT_EQ(std::string("GL_LUMINANCE_ALPHA_INTEGER_EXT"),Regal::Token::GLenumToString(GL_LUMINANCE_ALPHA_INTEGER_EXT));
    EXPECT_EQ(std::string("GL_LUMINANCE_ALPHA_SNORM"),Regal::Token::GLenumToString(GL_LUMINANCE_ALPHA_SNORM));
    EXPECT_EQ(std::string("GL_LUMINANCE_INTEGER_EXT"),Regal::Token::GLenumToString(GL_LUMINANCE_INTEGER_EXT));
    EXPECT_EQ(std::string("GL_LUMINANCE_SNORM"),Regal::Token::GLenumToString(GL_LUMINANCE_SNORM));
    EXPECT_EQ(std::string("GL_MAD_ATI"),Regal::Token::GLenumToString(GL_MAD_ATI));
    EXPECT_EQ(std::string("GL_MAGNITUDE_BIAS_NV"),Regal::Token::GLenumToString(GL_MAGNITUDE_BIAS_NV));
    EXPECT_EQ(std::string("GL_MAGNITUDE_SCALE_NV"),Regal::Token::GLenumToString(GL_MAGNITUDE_SCALE_NV));
    EXPECT_EQ(std::string("GL_MAJOR_VERSION"),Regal::Token::GLenumToString(GL_MAJOR_VERSION));
    EXPECT_EQ(std::string("GL_MAP_ATTRIB_U_ORDER_NV"),Regal::Token::GLenumToString(GL_MAP_ATTRIB_U_ORDER_NV));
    EXPECT_EQ(std::string("GL_MAP_ATTRIB_V_ORDER_NV"),Regal::Token::GLenumToString(GL_MAP_ATTRIB_V_ORDER_NV));
    EXPECT_EQ(std::string("GL_MAP_TESSELLATION_NV"),Regal::Token::GLenumToString(GL_MAP_TESSELLATION_NV));
    EXPECT_EQ(std::string("GL_MATERIAL_SIDE_HINT_PGI"),Regal::Token::GLenumToString(GL_MATERIAL_SIDE_HINT_PGI));
    EXPECT_EQ(std::string("GL_MATRIX_EXT"),Regal::Token::GLenumToString(GL_MATRIX_EXT));
    EXPECT_EQ(std::string("GL_MATRIX_INDEX_ARRAY_ARB"),Regal::Token::GLenumToString(GL_MATRIX_INDEX_ARRAY_ARB));
    EXPECT_EQ(std::string("GL_MATRIX_INDEX_ARRAY_POINTER_ARB"),Regal::Token::GLenumToString(GL_MATRIX_INDEX_ARRAY_POINTER_ARB));
    EXPECT_EQ(std::string("GL_MATRIX_INDEX_ARRAY_SIZE_ARB"),Regal::Token::GLenumToString(GL_MATRIX_INDEX_ARRAY_SIZE_ARB));
    EXPECT_EQ(std::string("GL_MATRIX_INDEX_ARRAY_STRIDE_ARB"),Regal::Token::GLenumToString(GL_MATRIX_INDEX_ARRAY_STRIDE_ARB));
    EXPECT_EQ(std::string("GL_MATRIX_INDEX_ARRAY_TYPE_ARB"),Regal::Token::GLenumToString(GL_MATRIX_INDEX_ARRAY_TYPE_ARB));
    EXPECT_EQ(std::string("GL_MATRIX_PALETTE_ARB"),Regal::Token::GLenumToString(GL_MATRIX_PALETTE_ARB));
    EXPECT_EQ(std::string("GL_MAX"),Regal::Token::GLenumToString(GL_MAX));
//    EXPECT_EQ(std::string("GL_MAX_ACTIVE_LIGHTS_SGIX"),Regal::Token::GLenumToString(GL_MAX_ACTIVE_LIGHTS_SGIX));
    EXPECT_EQ(std::string("GL_MAX_ARRAY_TEXTURE_LAYERS"),Regal::Token::GLenumToString(GL_MAX_ARRAY_TEXTURE_LAYERS));
    EXPECT_EQ(std::string("GL_MAX_ARRAY_TEXTURE_LAYERS"),Regal::Token::GLenumToString(GL_MAX_ARRAY_TEXTURE_LAYERS_EXT));
    EXPECT_EQ(std::string("GL_MAX_ASYNC_DRAW_PIXELS_SGIX"),Regal::Token::GLenumToString(GL_MAX_ASYNC_DRAW_PIXELS_SGIX));
    EXPECT_EQ(std::string("GL_MAX_ASYNC_HISTOGRAM_SGIX"),Regal::Token::GLenumToString(GL_MAX_ASYNC_HISTOGRAM_SGIX));
    EXPECT_EQ(std::string("GL_MAX_ASYNC_READ_PIXELS_SGIX"),Regal::Token::GLenumToString(GL_MAX_ASYNC_READ_PIXELS_SGIX));
    EXPECT_EQ(std::string("GL_MAX_ASYNC_TEX_IMAGE_SGIX"),Regal::Token::GLenumToString(GL_MAX_ASYNC_TEX_IMAGE_SGIX));
    EXPECT_EQ(std::string("GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS"),Regal::Token::GLenumToString(GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS));
    EXPECT_EQ(std::string("GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE"),Regal::Token::GLenumToString(GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE));
    EXPECT_EQ(std::string("GL_MAX_BINDABLE_UNIFORM_SIZE_EXT"),Regal::Token::GLenumToString(GL_MAX_BINDABLE_UNIFORM_SIZE_EXT));
//    EXPECT_EQ(std::string("GL_MAX_CLIPMAP_DEPTH_SGIX"),Regal::Token::GLenumToString(GL_MAX_CLIPMAP_DEPTH_SGIX));
//    EXPECT_EQ(std::string("GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX"),Regal::Token::GLenumToString(GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX));
    EXPECT_EQ(std::string("GL_MAX_CLIP_DISTANCES"),Regal::Token::GLenumToString(GL_MAX_CLIP_DISTANCES));
    EXPECT_EQ(std::string("GL_MAX_COLOR_ATTACHMENTS"),Regal::Token::GLenumToString(GL_MAX_COLOR_ATTACHMENTS));
    EXPECT_EQ(std::string("GL_MAX_COLOR_ATTACHMENTS"),Regal::Token::GLenumToString(GL_MAX_COLOR_ATTACHMENTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_COLOR_MATRIX_STACK_DEPTH"),Regal::Token::GLenumToString(GL_MAX_COLOR_MATRIX_STACK_DEPTH));
    EXPECT_EQ(std::string("GL_MAX_COLOR_MATRIX_STACK_DEPTH"),Regal::Token::GLenumToString(GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI));
    EXPECT_EQ(std::string("GL_MAX_COLOR_TEXTURE_SAMPLES"),Regal::Token::GLenumToString(GL_MAX_COLOR_TEXTURE_SAMPLES));
    EXPECT_EQ(std::string("GL_MAX_COMBINED_ATOMIC_COUNTERS"),Regal::Token::GLenumToString(GL_MAX_COMBINED_ATOMIC_COUNTERS));
    EXPECT_EQ(std::string("GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS"),Regal::Token::GLenumToString(GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS));
    EXPECT_EQ(std::string("GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_COMBINED_IMAGE_UNIFORMS"),Regal::Token::GLenumToString(GL_MAX_COMBINED_IMAGE_UNIFORMS));
    EXPECT_EQ(std::string("GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS"),Regal::Token::GLenumToString(GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS));
    EXPECT_EQ(std::string("GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS"),Regal::Token::GLenumToString(GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS"),Regal::Token::GLenumToString(GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS));
    EXPECT_EQ(std::string("GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS"),Regal::Token::GLenumToString(GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB));
    EXPECT_EQ(std::string("GL_MAX_COMBINED_UNIFORM_BLOCKS"),Regal::Token::GLenumToString(GL_MAX_COMBINED_UNIFORM_BLOCKS));
    EXPECT_EQ(std::string("GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_CONVOLUTION_HEIGHT"),Regal::Token::GLenumToString(GL_MAX_CONVOLUTION_HEIGHT));
    EXPECT_EQ(std::string("GL_MAX_CONVOLUTION_HEIGHT"),Regal::Token::GLenumToString(GL_MAX_CONVOLUTION_HEIGHT_EXT));
    EXPECT_EQ(std::string("GL_MAX_CONVOLUTION_WIDTH"),Regal::Token::GLenumToString(GL_MAX_CONVOLUTION_WIDTH));
    EXPECT_EQ(std::string("GL_MAX_CONVOLUTION_WIDTH"),Regal::Token::GLenumToString(GL_MAX_CONVOLUTION_WIDTH_EXT));
    EXPECT_EQ(std::string("GL_MAX_CUBE_MAP_TEXTURE_SIZE"),Regal::Token::GLenumToString(GL_MAX_CUBE_MAP_TEXTURE_SIZE));
    EXPECT_EQ(std::string("GL_MAX_CUBE_MAP_TEXTURE_SIZE"),Regal::Token::GLenumToString(GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB));
    EXPECT_EQ(std::string("GL_MAX_CUBE_MAP_TEXTURE_SIZE"),Regal::Token::GLenumToString(GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT));
    EXPECT_EQ(std::string("GL_MAX_DEBUG_LOGGED_MESSAGES_AMD"),Regal::Token::GLenumToString(GL_MAX_DEBUG_LOGGED_MESSAGES_AMD));
    EXPECT_EQ(std::string("GL_MAX_DEBUG_LOGGED_MESSAGES_ARB"),Regal::Token::GLenumToString(GL_MAX_DEBUG_LOGGED_MESSAGES_ARB));
    EXPECT_EQ(std::string("GL_MAX_DEBUG_MESSAGE_LENGTH_ARB"),Regal::Token::GLenumToString(GL_MAX_DEBUG_MESSAGE_LENGTH_ARB));
//    EXPECT_EQ(std::string("GL_MAX_DEFORMATION_ORDER_SGIX"),Regal::Token::GLenumToString(GL_MAX_DEFORMATION_ORDER_SGIX));
    EXPECT_EQ(std::string("GL_MAX_DEPTH_TEXTURE_SAMPLES"),Regal::Token::GLenumToString(GL_MAX_DEPTH_TEXTURE_SAMPLES));
    EXPECT_EQ(std::string("GL_MAX_DRAW_BUFFERS"),Regal::Token::GLenumToString(GL_MAX_DRAW_BUFFERS));
    EXPECT_EQ(std::string("GL_MAX_DRAW_BUFFERS"),Regal::Token::GLenumToString(GL_MAX_DRAW_BUFFERS_ARB));
    EXPECT_EQ(std::string("GL_MAX_DRAW_BUFFERS_ATI"),Regal::Token::GLenumToString(GL_MAX_DRAW_BUFFERS_ATI));
    EXPECT_EQ(std::string("GL_MAX_DUAL_SOURCE_DRAW_BUFFERS"),Regal::Token::GLenumToString(GL_MAX_DUAL_SOURCE_DRAW_BUFFERS));
    EXPECT_EQ(std::string("GL_MAX_ELEMENTS_INDICES"),Regal::Token::GLenumToString(GL_MAX_ELEMENTS_INDICES));
    EXPECT_EQ(std::string("GL_MAX_ELEMENTS_INDICES"),Regal::Token::GLenumToString(GL_MAX_ELEMENTS_INDICES_EXT));
    EXPECT_EQ(std::string("GL_MAX_ELEMENTS_VERTICES"),Regal::Token::GLenumToString(GL_MAX_ELEMENTS_VERTICES));
    EXPECT_EQ(std::string("GL_MAX_ELEMENTS_VERTICES"),Regal::Token::GLenumToString(GL_MAX_ELEMENTS_VERTICES_EXT));
    EXPECT_EQ(std::string("GL_MAX_EXT"),Regal::Token::GLenumToString(GL_MAX_EXT));
//    EXPECT_EQ(std::string("GL_MAX_FOG_FUNC_POINTS_SGIS"),Regal::Token::GLenumToString(GL_MAX_FOG_FUNC_POINTS_SGIS));
    EXPECT_EQ(std::string("GL_MAX_FRAGMENT_ATOMIC_COUNTERS"),Regal::Token::GLenumToString(GL_MAX_FRAGMENT_ATOMIC_COUNTERS));
    EXPECT_EQ(std::string("GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS"),Regal::Token::GLenumToString(GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS));
    EXPECT_EQ(std::string("GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT"),Regal::Token::GLenumToString(GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT));
    EXPECT_EQ(std::string("GL_MAX_FRAGMENT_IMAGE_UNIFORMS"),Regal::Token::GLenumToString(GL_MAX_FRAGMENT_IMAGE_UNIFORMS));
    EXPECT_EQ(std::string("GL_MAX_FRAGMENT_INPUT_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_FRAGMENT_INPUT_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_FRAGMENT_INTERPOLATION_OFFSET"),Regal::Token::GLenumToString(GL_MAX_FRAGMENT_INTERPOLATION_OFFSET));
    EXPECT_EQ(std::string("GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV"),Regal::Token::GLenumToString(GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV));
//    EXPECT_EQ(std::string("GL_MAX_FRAGMENT_LIGHTS_SGIX"),Regal::Token::GLenumToString(GL_MAX_FRAGMENT_LIGHTS_SGIX));
    EXPECT_EQ(std::string("GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV"),Regal::Token::GLenumToString(GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV));
    EXPECT_EQ(std::string("GL_MAX_FRAGMENT_UNIFORM_BLOCKS"),Regal::Token::GLenumToString(GL_MAX_FRAGMENT_UNIFORM_BLOCKS));
    EXPECT_EQ(std::string("GL_MAX_FRAGMENT_UNIFORM_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_FRAGMENT_UNIFORM_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_FRAGMENT_UNIFORM_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB));
    EXPECT_EQ(std::string("GL_MAX_FRAGMENT_UNIFORM_VECTORS"),Regal::Token::GLenumToString(GL_MAX_FRAGMENT_UNIFORM_VECTORS));
//    EXPECT_EQ(std::string("GL_MAX_FRAMEZOOM_FACTOR_SGIX"),Regal::Token::GLenumToString(GL_MAX_FRAMEZOOM_FACTOR_SGIX));
    EXPECT_EQ(std::string("GL_MAX_GENERAL_COMBINERS_NV"),Regal::Token::GLenumToString(GL_MAX_GENERAL_COMBINERS_NV));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_ATOMIC_COUNTERS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_ATOMIC_COUNTERS));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_IMAGE_UNIFORMS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_IMAGE_UNIFORMS));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_INPUT_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_INPUT_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_OUTPUT_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_OUTPUT_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_OUTPUT_VERTICES"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_OUTPUT_VERTICES));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_OUTPUT_VERTICES"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_OUTPUT_VERTICES"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_SHADER_INVOCATIONS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_SHADER_INVOCATIONS));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_UNIFORM_BLOCKS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_UNIFORM_BLOCKS));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_UNIFORM_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_UNIFORM_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_UNIFORM_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_UNIFORM_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB));
    EXPECT_EQ(std::string("GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT"),Regal::Token::GLenumToString(GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_IMAGE_SAMPLES"),Regal::Token::GLenumToString(GL_MAX_IMAGE_SAMPLES));
    EXPECT_EQ(std::string("GL_MAX_IMAGE_SAMPLES"),Regal::Token::GLenumToString(GL_MAX_IMAGE_SAMPLES_EXT));
    EXPECT_EQ(std::string("GL_MAX_IMAGE_UNITS"),Regal::Token::GLenumToString(GL_MAX_IMAGE_UNITS));
    EXPECT_EQ(std::string("GL_MAX_IMAGE_UNITS"),Regal::Token::GLenumToString(GL_MAX_IMAGE_UNITS_EXT));
    EXPECT_EQ(std::string("GL_MAX_INTEGER_SAMPLES"),Regal::Token::GLenumToString(GL_MAX_INTEGER_SAMPLES));
    EXPECT_EQ(std::string("GL_MAX_MAP_TESSELLATION_NV"),Regal::Token::GLenumToString(GL_MAX_MAP_TESSELLATION_NV));
    EXPECT_EQ(std::string("GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB"),Regal::Token::GLenumToString(GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB));
    EXPECT_EQ(std::string("GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV"),Regal::Token::GLenumToString(GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV));
    EXPECT_EQ(std::string("GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT"),Regal::Token::GLenumToString(GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT));
    EXPECT_EQ(std::string("GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT"),Regal::Token::GLenumToString(GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT"),Regal::Token::GLenumToString(GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT));
    EXPECT_EQ(std::string("GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT"),Regal::Token::GLenumToString(GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT"),Regal::Token::GLenumToString(GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_PALETTE_MATRICES_ARB"),Regal::Token::GLenumToString(GL_MAX_PALETTE_MATRICES_ARB));
    EXPECT_EQ(std::string("GL_MAX_PATCH_VERTICES"),Regal::Token::GLenumToString(GL_MAX_PATCH_VERTICES));
    EXPECT_EQ(std::string("GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI"),Regal::Token::GLenumToString(GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_ATTRIBS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_ATTRIBS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_CALL_DEPTH_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_CALL_DEPTH_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_ENV_PARAMETERS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_ENV_PARAMETERS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_GENERIC_RESULTS_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_GENERIC_RESULTS_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_IF_DEPTH_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_IF_DEPTH_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_INSTRUCTIONS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_INSTRUCTIONS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_LOOP_COUNT_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_LOOP_COUNT_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_LOOP_DEPTH_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_LOOP_DEPTH_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_MATRICES_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_MATRICES_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_OUTPUT_VERTICES_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_OUTPUT_VERTICES_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_PARAMETERS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_PARAMETERS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_PATCH_ATTRIBS_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_PATCH_ATTRIBS_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_RESULT_COMPONENTS_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_RESULT_COMPONENTS_NV));
//    EXPECT_EQ(std::string("GL_MAX_PROGRAM_SUBROUTINE_NUM_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_SUBROUTINE_NUM_NV));
//    EXPECT_EQ(std::string("GL_MAX_PROGRAM_SUBROUTINE_PARAMETERS_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_SUBROUTINE_PARAMETERS_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_TEMPORARIES_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_TEMPORARIES_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_TEXEL_OFFSET"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_TEXEL_OFFSET));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_TEXEL_OFFSET_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_TEXEL_OFFSET_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB));
//    EXPECT_EQ(std::string("GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB));
    EXPECT_EQ(std::string("GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV"),Regal::Token::GLenumToString(GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV));
    EXPECT_EQ(std::string("GL_MAX_RATIONAL_EVAL_ORDER_NV"),Regal::Token::GLenumToString(GL_MAX_RATIONAL_EVAL_ORDER_NV));
    EXPECT_EQ(std::string("GL_MAX_RECTANGLE_TEXTURE_SIZE"),Regal::Token::GLenumToString(GL_MAX_RECTANGLE_TEXTURE_SIZE));
    EXPECT_EQ(std::string("GL_MAX_RECTANGLE_TEXTURE_SIZE"),Regal::Token::GLenumToString(GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB));
    EXPECT_EQ(std::string("GL_MAX_RECTANGLE_TEXTURE_SIZE_NV"),Regal::Token::GLenumToString(GL_MAX_RECTANGLE_TEXTURE_SIZE_NV));
    EXPECT_EQ(std::string("GL_MAX_RENDERBUFFER_SIZE"),Regal::Token::GLenumToString(GL_MAX_RENDERBUFFER_SIZE));
    EXPECT_EQ(std::string("GL_MAX_RENDERBUFFER_SIZE"),Regal::Token::GLenumToString(GL_MAX_RENDERBUFFER_SIZE_EXT));
    EXPECT_EQ(std::string("GL_MAX_SAMPLES"),Regal::Token::GLenumToString(GL_MAX_SAMPLES));
    EXPECT_EQ(std::string("GL_MAX_SAMPLES"),Regal::Token::GLenumToString(GL_MAX_SAMPLES_EXT));
    EXPECT_EQ(std::string("GL_MAX_SAMPLE_MASK_WORDS"),Regal::Token::GLenumToString(GL_MAX_SAMPLE_MASK_WORDS));
    EXPECT_EQ(std::string("GL_MAX_SAMPLE_MASK_WORDS_NV"),Regal::Token::GLenumToString(GL_MAX_SAMPLE_MASK_WORDS_NV));
    EXPECT_EQ(std::string("GL_MAX_SERVER_WAIT_TIMEOUT"),Regal::Token::GLenumToString(GL_MAX_SERVER_WAIT_TIMEOUT));
    EXPECT_EQ(std::string("GL_MAX_SHADER_BUFFER_ADDRESS_NV"),Regal::Token::GLenumToString(GL_MAX_SHADER_BUFFER_ADDRESS_NV));
    EXPECT_EQ(std::string("GL_MAX_SHININESS_NV"),Regal::Token::GLenumToString(GL_MAX_SHININESS_NV));
    EXPECT_EQ(std::string("GL_MAX_SPOT_EXPONENT_NV"),Regal::Token::GLenumToString(GL_MAX_SPOT_EXPONENT_NV));
    EXPECT_EQ(std::string("GL_MAX_SUBROUTINES"),Regal::Token::GLenumToString(GL_MAX_SUBROUTINES));
    EXPECT_EQ(std::string("GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS"),Regal::Token::GLenumToString(GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS));
    EXPECT_EQ(std::string("GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS"),Regal::Token::GLenumToString(GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS));
    EXPECT_EQ(std::string("GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS"),Regal::Token::GLenumToString(GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS));
    EXPECT_EQ(std::string("GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS"),Regal::Token::GLenumToString(GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS));
    EXPECT_EQ(std::string("GL_MAX_TESS_CONTROL_INPUT_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_TESS_CONTROL_INPUT_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS"),Regal::Token::GLenumToString(GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS));
    EXPECT_EQ(std::string("GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS"),Regal::Token::GLenumToString(GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS));
    EXPECT_EQ(std::string("GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS"),Regal::Token::GLenumToString(GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS));
    EXPECT_EQ(std::string("GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS"),Regal::Token::GLenumToString(GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS));
    EXPECT_EQ(std::string("GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS"),Regal::Token::GLenumToString(GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS));
    EXPECT_EQ(std::string("GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS"),Regal::Token::GLenumToString(GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS));
    EXPECT_EQ(std::string("GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS"),Regal::Token::GLenumToString(GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS));
    EXPECT_EQ(std::string("GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_TESS_GEN_LEVEL"),Regal::Token::GLenumToString(GL_MAX_TESS_GEN_LEVEL));
    EXPECT_EQ(std::string("GL_MAX_TESS_PATCH_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_TESS_PATCH_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_TEXTURE_BUFFER_SIZE"),Regal::Token::GLenumToString(GL_MAX_TEXTURE_BUFFER_SIZE));
    EXPECT_EQ(std::string("GL_MAX_TEXTURE_BUFFER_SIZE"),Regal::Token::GLenumToString(GL_MAX_TEXTURE_BUFFER_SIZE_ARB));
    EXPECT_EQ(std::string("GL_MAX_TEXTURE_BUFFER_SIZE"),Regal::Token::GLenumToString(GL_MAX_TEXTURE_BUFFER_SIZE_EXT));
    EXPECT_EQ(std::string("GL_MAX_TEXTURE_COORDS"),Regal::Token::GLenumToString(GL_MAX_TEXTURE_COORDS));
    EXPECT_EQ(std::string("GL_MAX_TEXTURE_COORDS"),Regal::Token::GLenumToString(GL_MAX_TEXTURE_COORDS_ARB));
    EXPECT_EQ(std::string("GL_MAX_TEXTURE_COORDS_NV"),Regal::Token::GLenumToString(GL_MAX_TEXTURE_COORDS_NV));
    EXPECT_EQ(std::string("GL_MAX_TEXTURE_IMAGE_UNITS"),Regal::Token::GLenumToString(GL_MAX_TEXTURE_IMAGE_UNITS));
    EXPECT_EQ(std::string("GL_MAX_TEXTURE_IMAGE_UNITS"),Regal::Token::GLenumToString(GL_MAX_TEXTURE_IMAGE_UNITS_ARB));
    EXPECT_EQ(std::string("GL_MAX_TEXTURE_IMAGE_UNITS_NV"),Regal::Token::GLenumToString(GL_MAX_TEXTURE_IMAGE_UNITS_NV));
    EXPECT_EQ(std::string("GL_MAX_TEXTURE_LOD_BIAS"),Regal::Token::GLenumToString(GL_MAX_TEXTURE_LOD_BIAS));
    EXPECT_EQ(std::string("GL_MAX_TEXTURE_LOD_BIAS"),Regal::Token::GLenumToString(GL_MAX_TEXTURE_LOD_BIAS_EXT));
    EXPECT_EQ(std::string("GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT"),Regal::Token::GLenumToString(GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT));
    EXPECT_EQ(std::string("GL_MAX_TEXTURE_UNITS"),Regal::Token::GLenumToString(GL_MAX_TEXTURE_UNITS));
    EXPECT_EQ(std::string("GL_MAX_TEXTURE_UNITS"),Regal::Token::GLenumToString(GL_MAX_TEXTURE_UNITS_ARB));
    EXPECT_EQ(std::string("GL_MAX_TRACK_MATRICES_NV"),Regal::Token::GLenumToString(GL_MAX_TRACK_MATRICES_NV));
    EXPECT_EQ(std::string("GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV"),Regal::Token::GLenumToString(GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV));
    EXPECT_EQ(std::string("GL_MAX_TRANSFORM_FEEDBACK_BUFFERS"),Regal::Token::GLenumToString(GL_MAX_TRANSFORM_FEEDBACK_BUFFERS));
//    EXPECT_EQ(std::string("GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_ATTRIBS_NV"),Regal::Token::GLenumToString(GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_ATTRIBS_NV));
    EXPECT_EQ(std::string("GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS"),Regal::Token::GLenumToString(GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS));
    EXPECT_EQ(std::string("GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS"),Regal::Token::GLenumToString(GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT));
    EXPECT_EQ(std::string("GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV"),Regal::Token::GLenumToString(GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV));
    EXPECT_EQ(std::string("GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV"),Regal::Token::GLenumToString(GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV));
    EXPECT_EQ(std::string("GL_MAX_UNIFORM_BLOCK_SIZE"),Regal::Token::GLenumToString(GL_MAX_UNIFORM_BLOCK_SIZE));
    EXPECT_EQ(std::string("GL_MAX_UNIFORM_BUFFER_BINDINGS"),Regal::Token::GLenumToString(GL_MAX_UNIFORM_BUFFER_BINDINGS));
    EXPECT_EQ(std::string("GL_MAX_VARYING_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_VARYING_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_VARYING_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_VARYING_COMPONENTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_VARYING_FLOATS"),Regal::Token::GLenumToString(GL_MAX_VARYING_FLOATS));
    EXPECT_EQ(std::string("GL_MAX_VARYING_FLOATS"),Regal::Token::GLenumToString(GL_MAX_VARYING_FLOATS_ARB));
    EXPECT_EQ(std::string("GL_MAX_VARYING_VECTORS"),Regal::Token::GLenumToString(GL_MAX_VARYING_VECTORS));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV"),Regal::Token::GLenumToString(GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_ATOMIC_COUNTERS"),Regal::Token::GLenumToString(GL_MAX_VERTEX_ATOMIC_COUNTERS));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS"),Regal::Token::GLenumToString(GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_ATTRIBS"),Regal::Token::GLenumToString(GL_MAX_VERTEX_ATTRIBS));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_ATTRIBS"),Regal::Token::GLenumToString(GL_MAX_VERTEX_ATTRIBS_ARB));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT"),Regal::Token::GLenumToString(GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_HINT_PGI"),Regal::Token::GLenumToString(GL_MAX_VERTEX_HINT_PGI));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_IMAGE_UNIFORMS"),Regal::Token::GLenumToString(GL_MAX_VERTEX_IMAGE_UNIFORMS));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_OUTPUT_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_VERTEX_OUTPUT_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT"),Regal::Token::GLenumToString(GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_SHADER_INVARIANTS_EXT"),Regal::Token::GLenumToString(GL_MAX_VERTEX_SHADER_INVARIANTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_SHADER_LOCALS_EXT"),Regal::Token::GLenumToString(GL_MAX_VERTEX_SHADER_LOCALS_EXT));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT"),Regal::Token::GLenumToString(GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_SHADER_VARIANTS_EXT"),Regal::Token::GLenumToString(GL_MAX_VERTEX_SHADER_VARIANTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_STREAMS"),Regal::Token::GLenumToString(GL_MAX_VERTEX_STREAMS));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_STREAMS_ATI"),Regal::Token::GLenumToString(GL_MAX_VERTEX_STREAMS_ATI));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS"),Regal::Token::GLenumToString(GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS"),Regal::Token::GLenumToString(GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_UNIFORM_BLOCKS"),Regal::Token::GLenumToString(GL_MAX_VERTEX_UNIFORM_BLOCKS));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_UNIFORM_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_VERTEX_UNIFORM_COMPONENTS));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_UNIFORM_COMPONENTS"),Regal::Token::GLenumToString(GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_UNIFORM_VECTORS"),Regal::Token::GLenumToString(GL_MAX_VERTEX_UNIFORM_VECTORS));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_UNITS_ARB"),Regal::Token::GLenumToString(GL_MAX_VERTEX_UNITS_ARB));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_VARYING_COMPONENTS_ARB"),Regal::Token::GLenumToString(GL_MAX_VERTEX_VARYING_COMPONENTS_ARB));
    EXPECT_EQ(std::string("GL_MAX_VERTEX_VARYING_COMPONENTS_EXT"),Regal::Token::GLenumToString(GL_MAX_VERTEX_VARYING_COMPONENTS_EXT));
    EXPECT_EQ(std::string("GL_MAX_VIEWPORTS"),Regal::Token::GLenumToString(GL_MAX_VIEWPORTS));
    EXPECT_EQ(std::string("GL_MEDIUM_FLOAT"),Regal::Token::GLenumToString(GL_MEDIUM_FLOAT));
    EXPECT_EQ(std::string("GL_MEDIUM_INT"),Regal::Token::GLenumToString(GL_MEDIUM_INT));
    EXPECT_EQ(std::string("GL_MIN"),Regal::Token::GLenumToString(GL_MIN));
    EXPECT_EQ(std::string("GL_MINMAX"),Regal::Token::GLenumToString(GL_MINMAX));
    EXPECT_EQ(std::string("GL_MINMAX"),Regal::Token::GLenumToString(GL_MINMAX_EXT));
    EXPECT_EQ(std::string("GL_MINMAX_FORMAT"),Regal::Token::GLenumToString(GL_MINMAX_FORMAT));
    EXPECT_EQ(std::string("GL_MINMAX_FORMAT"),Regal::Token::GLenumToString(GL_MINMAX_FORMAT_EXT));
    EXPECT_EQ(std::string("GL_MINMAX_SINK"),Regal::Token::GLenumToString(GL_MINMAX_SINK));
    EXPECT_EQ(std::string("GL_MINMAX_SINK"),Regal::Token::GLenumToString(GL_MINMAX_SINK_EXT));
    EXPECT_EQ(std::string("GL_MINOR_VERSION"),Regal::Token::GLenumToString(GL_MINOR_VERSION));
    EXPECT_EQ(std::string("GL_MIN"),Regal::Token::GLenumToString(GL_MIN_EXT));
    EXPECT_EQ(std::string("GL_MIN_FRAGMENT_INTERPOLATION_OFFSET"),Regal::Token::GLenumToString(GL_MIN_FRAGMENT_INTERPOLATION_OFFSET));
    EXPECT_EQ(std::string("GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV"),Regal::Token::GLenumToString(GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV));
    EXPECT_EQ(std::string("GL_MIN_MAP_BUFFER_ALIGNMENT"),Regal::Token::GLenumToString(GL_MIN_MAP_BUFFER_ALIGNMENT));
    EXPECT_EQ(std::string("GL_MIN_PROGRAM_TEXEL_OFFSET"),Regal::Token::GLenumToString(GL_MIN_PROGRAM_TEXEL_OFFSET));
    EXPECT_EQ(std::string("GL_MIN_PROGRAM_TEXEL_OFFSET_NV"),Regal::Token::GLenumToString(GL_MIN_PROGRAM_TEXEL_OFFSET_NV));
    EXPECT_EQ(std::string("GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET"),Regal::Token::GLenumToString(GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET));
    EXPECT_EQ(std::string("GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET"),Regal::Token::GLenumToString(GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB));
//    EXPECT_EQ(std::string("GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV"),Regal::Token::GLenumToString(GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV));
    EXPECT_EQ(std::string("GL_MIN_SAMPLE_SHADING_VALUE"),Regal::Token::GLenumToString(GL_MIN_SAMPLE_SHADING_VALUE));
    EXPECT_EQ(std::string("GL_MIN_SAMPLE_SHADING_VALUE"),Regal::Token::GLenumToString(GL_MIN_SAMPLE_SHADING_VALUE_ARB));
    EXPECT_EQ(std::string("GL_MIRRORED_REPEAT"),Regal::Token::GLenumToString(GL_MIRRORED_REPEAT));
    EXPECT_EQ(std::string("GL_MIRRORED_REPEAT"),Regal::Token::GLenumToString(GL_MIRRORED_REPEAT_ARB));
    EXPECT_EQ(std::string("GL_MIRRORED_REPEAT_IBM"),Regal::Token::GLenumToString(GL_MIRRORED_REPEAT_IBM));
    EXPECT_EQ(std::string("GL_MIRROR_CLAMP_ATI"),Regal::Token::GLenumToString(GL_MIRROR_CLAMP_ATI));
    EXPECT_EQ(std::string("GL_MIRROR_CLAMP_EXT"),Regal::Token::GLenumToString(GL_MIRROR_CLAMP_EXT));
    EXPECT_EQ(std::string("GL_MIRROR_CLAMP_TO_BORDER_EXT"),Regal::Token::GLenumToString(GL_MIRROR_CLAMP_TO_BORDER_EXT));
    EXPECT_EQ(std::string("GL_MIRROR_CLAMP_TO_EDGE_ATI"),Regal::Token::GLenumToString(GL_MIRROR_CLAMP_TO_EDGE_ATI));
    EXPECT_EQ(std::string("GL_MIRROR_CLAMP_TO_EDGE_EXT"),Regal::Token::GLenumToString(GL_MIRROR_CLAMP_TO_EDGE_EXT));
    EXPECT_EQ(std::string("GL_MITER_REVERT_NV"),Regal::Token::GLenumToString(GL_MITER_REVERT_NV));
    EXPECT_EQ(std::string("GL_MITER_TRUNCATE_NV"),Regal::Token::GLenumToString(GL_MITER_TRUNCATE_NV));
    EXPECT_EQ(std::string("GL_MODELVIEW_PROJECTION_NV"),Regal::Token::GLenumToString(GL_MODELVIEW_PROJECTION_NV));
    EXPECT_EQ(std::string("GL_MODULATE_ADD_ATI"),Regal::Token::GLenumToString(GL_MODULATE_ADD_ATI));
    EXPECT_EQ(std::string("GL_MODULATE_SIGNED_ADD_ATI"),Regal::Token::GLenumToString(GL_MODULATE_SIGNED_ADD_ATI));
    EXPECT_EQ(std::string("GL_MODULATE_SUBTRACT_ATI"),Regal::Token::GLenumToString(GL_MODULATE_SUBTRACT_ATI));
    EXPECT_EQ(std::string("GL_MOVE_TO_CONTINUES_NV"),Regal::Token::GLenumToString(GL_MOVE_TO_CONTINUES_NV));
    EXPECT_EQ(std::string("GL_MOVE_TO_NV"),Regal::Token::GLenumToString(GL_MOVE_TO_NV));
    EXPECT_EQ(std::string("GL_MOVE_TO_RESETS_NV"),Regal::Token::GLenumToString(GL_MOVE_TO_RESETS_NV));
    EXPECT_EQ(std::string("GL_MOV_ATI"),Regal::Token::GLenumToString(GL_MOV_ATI));
    EXPECT_EQ(std::string("GL_MULTISAMPLE"),Regal::Token::GLenumToString(GL_MULTISAMPLE));
    EXPECT_EQ(std::string("GL_MULTISAMPLE"),Regal::Token::GLenumToString(GL_MULTISAMPLE_ARB));
    EXPECT_EQ(std::string("GL_MULTISAMPLE_COVERAGE_MODES_NV"),Regal::Token::GLenumToString(GL_MULTISAMPLE_COVERAGE_MODES_NV));
    EXPECT_EQ(std::string("GL_MULTISAMPLE"),Regal::Token::GLenumToString(GL_MULTISAMPLE_EXT));
    EXPECT_EQ(std::string("GL_MULTISAMPLE_FILTER_HINT_NV"),Regal::Token::GLenumToString(GL_MULTISAMPLE_FILTER_HINT_NV));
    EXPECT_EQ(std::string("GL_MULTISAMPLE"),Regal::Token::GLenumToString(GL_MULTISAMPLE_SGIS));
//    EXPECT_EQ(std::string("GL_MULTI_HULLS_NV"),Regal::Token::GLenumToString(GL_MULTI_HULLS_NV));
    EXPECT_EQ(std::string("GL_MUL_ATI"),Regal::Token::GLenumToString(GL_MUL_ATI));
    EXPECT_EQ(std::string("GL_MVP_MATRIX_EXT"),Regal::Token::GLenumToString(GL_MVP_MATRIX_EXT));
    EXPECT_EQ(std::string("GL_NAMED_STRING_LENGTH_ARB"),Regal::Token::GLenumToString(GL_NAMED_STRING_LENGTH_ARB));
    EXPECT_EQ(std::string("GL_NAMED_STRING_TYPE_ARB"),Regal::Token::GLenumToString(GL_NAMED_STRING_TYPE_ARB));
    EXPECT_EQ(std::string("GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI"),Regal::Token::GLenumToString(GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI));
    EXPECT_EQ(std::string("GL_NATIVE_GRAPHICS_END_HINT_PGI"),Regal::Token::GLenumToString(GL_NATIVE_GRAPHICS_END_HINT_PGI));
    EXPECT_EQ(std::string("GL_NATIVE_GRAPHICS_HANDLE_PGI"),Regal::Token::GLenumToString(GL_NATIVE_GRAPHICS_HANDLE_PGI));
//    EXPECT_EQ(std::string("GL_NEAREST_CLIPMAP_LINEAR_SGIX"),Regal::Token::GLenumToString(GL_NEAREST_CLIPMAP_LINEAR_SGIX));
//    EXPECT_EQ(std::string("GL_NEAREST_CLIPMAP_NEAREST_SGIX"),Regal::Token::GLenumToString(GL_NEAREST_CLIPMAP_NEAREST_SGIX));
    EXPECT_EQ(std::string("GL_NEGATIVE_ONE_EXT"),Regal::Token::GLenumToString(GL_NEGATIVE_ONE_EXT));
    EXPECT_EQ(std::string("GL_NEGATIVE_W_EXT"),Regal::Token::GLenumToString(GL_NEGATIVE_W_EXT));
    EXPECT_EQ(std::string("GL_NEGATIVE_X_EXT"),Regal::Token::GLenumToString(GL_NEGATIVE_X_EXT));
    EXPECT_EQ(std::string("GL_NEGATIVE_Y_EXT"),Regal::Token::GLenumToString(GL_NEGATIVE_Y_EXT));
    EXPECT_EQ(std::string("GL_NEGATIVE_Z_EXT"),Regal::Token::GLenumToString(GL_NEGATIVE_Z_EXT));
    EXPECT_EQ(std::string("GL_NEXT_VIDEO_CAPTURE_BUFFER_STATUS_NV"),Regal::Token::GLenumToString(GL_NEXT_VIDEO_CAPTURE_BUFFER_STATUS_NV));
    EXPECT_EQ(std::string("GL_NORMALIZED_RANGE_EXT"),Regal::Token::GLenumToString(GL_NORMALIZED_RANGE_EXT));
    EXPECT_EQ(std::string("GL_NORMAL_ARRAY_ADDRESS_NV"),Regal::Token::GLenumToString(GL_NORMAL_ARRAY_ADDRESS_NV));
    EXPECT_EQ(std::string("GL_NORMAL_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_NORMAL_ARRAY_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_NORMAL_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_NORMAL_ARRAY_BUFFER_BINDING_ARB));
    EXPECT_EQ(std::string("GL_NORMAL_ARRAY_COUNT_EXT"),Regal::Token::GLenumToString(GL_NORMAL_ARRAY_COUNT_EXT));
    EXPECT_EQ(std::string("GL_NORMAL_ARRAY_EXT"),Regal::Token::GLenumToString(GL_NORMAL_ARRAY_EXT));
    EXPECT_EQ(std::string("GL_NORMAL_ARRAY_LENGTH_NV"),Regal::Token::GLenumToString(GL_NORMAL_ARRAY_LENGTH_NV));
    EXPECT_EQ(std::string("GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL"),Regal::Token::GLenumToString(GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL));
    EXPECT_EQ(std::string("GL_NORMAL_ARRAY_POINTER_EXT"),Regal::Token::GLenumToString(GL_NORMAL_ARRAY_POINTER_EXT));
    EXPECT_EQ(std::string("GL_NORMAL_ARRAY_STRIDE_EXT"),Regal::Token::GLenumToString(GL_NORMAL_ARRAY_STRIDE_EXT));
    EXPECT_EQ(std::string("GL_NORMAL_ARRAY_TYPE_EXT"),Regal::Token::GLenumToString(GL_NORMAL_ARRAY_TYPE_EXT));
    EXPECT_EQ(std::string("GL_NORMAL_MAP"),Regal::Token::GLenumToString(GL_NORMAL_MAP));
    EXPECT_EQ(std::string("GL_NORMAL_MAP"),Regal::Token::GLenumToString(GL_NORMAL_MAP_ARB));
    EXPECT_EQ(std::string("GL_NORMAL_MAP"),Regal::Token::GLenumToString(GL_NORMAL_MAP_EXT));
    EXPECT_EQ(std::string("GL_NORMAL_MAP_NV"),Regal::Token::GLenumToString(GL_NORMAL_MAP_NV));
    EXPECT_EQ(std::string("GL_NO_RESET_NOTIFICATION_ARB"),Regal::Token::GLenumToString(GL_NO_RESET_NOTIFICATION_ARB));
    EXPECT_EQ(std::string("GL_NUM_COMPATIBLE_SUBROUTINES"),Regal::Token::GLenumToString(GL_NUM_COMPATIBLE_SUBROUTINES));
    EXPECT_EQ(std::string("GL_NUM_COMPRESSED_TEXTURE_FORMATS"),Regal::Token::GLenumToString(GL_NUM_COMPRESSED_TEXTURE_FORMATS));
    EXPECT_EQ(std::string("GL_NUM_COMPRESSED_TEXTURE_FORMATS"),Regal::Token::GLenumToString(GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB));
    EXPECT_EQ(std::string("GL_NUM_EXTENSIONS"),Regal::Token::GLenumToString(GL_NUM_EXTENSIONS));
    EXPECT_EQ(std::string("GL_NUM_FILL_STREAMS_NV"),Regal::Token::GLenumToString(GL_NUM_FILL_STREAMS_NV));
    EXPECT_EQ(std::string("GL_NUM_FRAGMENT_CONSTANTS_ATI"),Regal::Token::GLenumToString(GL_NUM_FRAGMENT_CONSTANTS_ATI));
    EXPECT_EQ(std::string("GL_NUM_FRAGMENT_REGISTERS_ATI"),Regal::Token::GLenumToString(GL_NUM_FRAGMENT_REGISTERS_ATI));
    EXPECT_EQ(std::string("GL_NUM_GENERAL_COMBINERS_NV"),Regal::Token::GLenumToString(GL_NUM_GENERAL_COMBINERS_NV));
    EXPECT_EQ(std::string("GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI"),Regal::Token::GLenumToString(GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI));
    EXPECT_EQ(std::string("GL_NUM_INSTRUCTIONS_PER_PASS_ATI"),Regal::Token::GLenumToString(GL_NUM_INSTRUCTIONS_PER_PASS_ATI));
    EXPECT_EQ(std::string("GL_NUM_INSTRUCTIONS_TOTAL_ATI"),Regal::Token::GLenumToString(GL_NUM_INSTRUCTIONS_TOTAL_ATI));
    EXPECT_EQ(std::string("GL_NUM_LOOPBACK_COMPONENTS_ATI"),Regal::Token::GLenumToString(GL_NUM_LOOPBACK_COMPONENTS_ATI));
    EXPECT_EQ(std::string("GL_NUM_PASSES_ATI"),Regal::Token::GLenumToString(GL_NUM_PASSES_ATI));
    EXPECT_EQ(std::string("GL_NUM_PROGRAM_BINARY_FORMATS"),Regal::Token::GLenumToString(GL_NUM_PROGRAM_BINARY_FORMATS));
    EXPECT_EQ(std::string("GL_NUM_SAMPLE_COUNTS"),Regal::Token::GLenumToString(GL_NUM_SAMPLE_COUNTS));
    EXPECT_EQ(std::string("GL_NUM_SHADER_BINARY_FORMATS"),Regal::Token::GLenumToString(GL_NUM_SHADER_BINARY_FORMATS));
    EXPECT_EQ(std::string("GL_NUM_VIDEO_CAPTURE_STREAMS_NV"),Regal::Token::GLenumToString(GL_NUM_VIDEO_CAPTURE_STREAMS_NV));
    EXPECT_EQ(std::string("GL_OBJECT_ACTIVE_ATTRIBUTES_ARB"),Regal::Token::GLenumToString(GL_OBJECT_ACTIVE_ATTRIBUTES_ARB));
    EXPECT_EQ(std::string("GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB"),Regal::Token::GLenumToString(GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB));
    EXPECT_EQ(std::string("GL_OBJECT_ACTIVE_UNIFORMS_ARB"),Regal::Token::GLenumToString(GL_OBJECT_ACTIVE_UNIFORMS_ARB));
    EXPECT_EQ(std::string("GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB"),Regal::Token::GLenumToString(GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB));
    EXPECT_EQ(std::string("GL_OBJECT_ATTACHED_OBJECTS_ARB"),Regal::Token::GLenumToString(GL_OBJECT_ATTACHED_OBJECTS_ARB));
    EXPECT_EQ(std::string("GL_OBJECT_BUFFER_SIZE_ATI"),Regal::Token::GLenumToString(GL_OBJECT_BUFFER_SIZE_ATI));
    EXPECT_EQ(std::string("GL_OBJECT_BUFFER_USAGE_ATI"),Regal::Token::GLenumToString(GL_OBJECT_BUFFER_USAGE_ATI));
    EXPECT_EQ(std::string("GL_OBJECT_COMPILE_STATUS_ARB"),Regal::Token::GLenumToString(GL_OBJECT_COMPILE_STATUS_ARB));
    EXPECT_EQ(std::string("GL_OBJECT_DELETE_STATUS_ARB"),Regal::Token::GLenumToString(GL_OBJECT_DELETE_STATUS_ARB));
    EXPECT_EQ(std::string("GL_OBJECT_DISTANCE_TO_LINE_SGIS"),Regal::Token::GLenumToString(GL_OBJECT_DISTANCE_TO_LINE_SGIS));
    EXPECT_EQ(std::string("GL_OBJECT_DISTANCE_TO_POINT_SGIS"),Regal::Token::GLenumToString(GL_OBJECT_DISTANCE_TO_POINT_SGIS));
    EXPECT_EQ(std::string("GL_OBJECT_INFO_LOG_LENGTH_ARB"),Regal::Token::GLenumToString(GL_OBJECT_INFO_LOG_LENGTH_ARB));
    EXPECT_EQ(std::string("GL_OBJECT_LINE_SGIS"),Regal::Token::GLenumToString(GL_OBJECT_LINE_SGIS));
    EXPECT_EQ(std::string("GL_OBJECT_LINK_STATUS_ARB"),Regal::Token::GLenumToString(GL_OBJECT_LINK_STATUS_ARB));
    EXPECT_EQ(std::string("GL_OBJECT_POINT_SGIS"),Regal::Token::GLenumToString(GL_OBJECT_POINT_SGIS));
    EXPECT_EQ(std::string("GL_OBJECT_SHADER_SOURCE_LENGTH_ARB"),Regal::Token::GLenumToString(GL_OBJECT_SHADER_SOURCE_LENGTH_ARB));
    EXPECT_EQ(std::string("GL_OBJECT_SUBTYPE_ARB"),Regal::Token::GLenumToString(GL_OBJECT_SUBTYPE_ARB));
    EXPECT_EQ(std::string("GL_OBJECT_TYPE"),Regal::Token::GLenumToString(GL_OBJECT_TYPE));
    EXPECT_EQ(std::string("GL_OBJECT_TYPE"),Regal::Token::GLenumToString(GL_OBJECT_TYPE_ARB));
    EXPECT_EQ(std::string("GL_OBJECT_VALIDATE_STATUS_ARB"),Regal::Token::GLenumToString(GL_OBJECT_VALIDATE_STATUS_ARB));
    EXPECT_EQ(std::string("GL_OCCLUSION_TEST_HP"),Regal::Token::GLenumToString(GL_OCCLUSION_TEST_HP));
    EXPECT_EQ(std::string("GL_OCCLUSION_TEST_RESULT_HP"),Regal::Token::GLenumToString(GL_OCCLUSION_TEST_RESULT_HP));
    EXPECT_EQ(std::string("GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV"),Regal::Token::GLenumToString(GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV));
    EXPECT_EQ(std::string("GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV"),Regal::Token::GLenumToString(GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV));
    EXPECT_EQ(std::string("GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV"),Regal::Token::GLenumToString(GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV));
    EXPECT_EQ(std::string("GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV"),Regal::Token::GLenumToString(GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV));
    EXPECT_EQ(std::string("GL_OFFSET_TEXTURE_BIAS_NV"),Regal::Token::GLenumToString(GL_OFFSET_TEXTURE_BIAS_NV));
    EXPECT_EQ(std::string("GL_OFFSET_TEXTURE_MATRIX_NV"),Regal::Token::GLenumToString(GL_OFFSET_TEXTURE_MATRIX_NV));
    EXPECT_EQ(std::string("GL_OFFSET_TEXTURE_RECTANGLE_NV"),Regal::Token::GLenumToString(GL_OFFSET_TEXTURE_RECTANGLE_NV));
    EXPECT_EQ(std::string("GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV"),Regal::Token::GLenumToString(GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV));
    EXPECT_EQ(std::string("GL_OFFSET_TEXTURE_SCALE_NV"),Regal::Token::GLenumToString(GL_OFFSET_TEXTURE_SCALE_NV));
    EXPECT_EQ(std::string("GL_ONE_EXT"),Regal::Token::GLenumToString(GL_ONE_EXT));
    EXPECT_EQ(std::string("GL_ONE_MINUS_CONSTANT_ALPHA"),Regal::Token::GLenumToString(GL_ONE_MINUS_CONSTANT_ALPHA));
    EXPECT_EQ(std::string("GL_ONE_MINUS_CONSTANT_ALPHA"),Regal::Token::GLenumToString(GL_ONE_MINUS_CONSTANT_ALPHA_EXT));
    EXPECT_EQ(std::string("GL_ONE_MINUS_CONSTANT_COLOR"),Regal::Token::GLenumToString(GL_ONE_MINUS_CONSTANT_COLOR));
    EXPECT_EQ(std::string("GL_ONE_MINUS_CONSTANT_COLOR"),Regal::Token::GLenumToString(GL_ONE_MINUS_CONSTANT_COLOR_EXT));
    EXPECT_EQ(std::string("GL_OP_ADD_EXT"),Regal::Token::GLenumToString(GL_OP_ADD_EXT));
    EXPECT_EQ(std::string("GL_OP_CLAMP_EXT"),Regal::Token::GLenumToString(GL_OP_CLAMP_EXT));
    EXPECT_EQ(std::string("GL_OP_CROSS_PRODUCT_EXT"),Regal::Token::GLenumToString(GL_OP_CROSS_PRODUCT_EXT));
    EXPECT_EQ(std::string("GL_OP_FLOOR_EXT"),Regal::Token::GLenumToString(GL_OP_FLOOR_EXT));
    EXPECT_EQ(std::string("GL_OP_FRAC_EXT"),Regal::Token::GLenumToString(GL_OP_FRAC_EXT));
    EXPECT_EQ(std::string("GL_OP_INDEX_EXT"),Regal::Token::GLenumToString(GL_OP_INDEX_EXT));
    EXPECT_EQ(std::string("GL_OP_MADD_EXT"),Regal::Token::GLenumToString(GL_OP_MADD_EXT));
    EXPECT_EQ(std::string("GL_OP_MAX_EXT"),Regal::Token::GLenumToString(GL_OP_MAX_EXT));
    EXPECT_EQ(std::string("GL_OP_MIN_EXT"),Regal::Token::GLenumToString(GL_OP_MIN_EXT));
    EXPECT_EQ(std::string("GL_OP_MOV_EXT"),Regal::Token::GLenumToString(GL_OP_MOV_EXT));
    EXPECT_EQ(std::string("GL_OP_MULTIPLY_MATRIX_EXT"),Regal::Token::GLenumToString(GL_OP_MULTIPLY_MATRIX_EXT));
    EXPECT_EQ(std::string("GL_OP_MUL_EXT"),Regal::Token::GLenumToString(GL_OP_MUL_EXT));
    EXPECT_EQ(std::string("GL_OP_NEGATE_EXT"),Regal::Token::GLenumToString(GL_OP_NEGATE_EXT));
    EXPECT_EQ(std::string("GL_OP_POWER_EXT"),Regal::Token::GLenumToString(GL_OP_POWER_EXT));
    EXPECT_EQ(std::string("GL_OP_RECIP_EXT"),Regal::Token::GLenumToString(GL_OP_RECIP_EXT));
    EXPECT_EQ(std::string("GL_OP_RECIP_SQRT_EXT"),Regal::Token::GLenumToString(GL_OP_RECIP_SQRT_EXT));
    EXPECT_EQ(std::string("GL_OP_ROUND_EXT"),Regal::Token::GLenumToString(GL_OP_ROUND_EXT));
    EXPECT_EQ(std::string("GL_OP_SET_GE_EXT"),Regal::Token::GLenumToString(GL_OP_SET_GE_EXT));
    EXPECT_EQ(std::string("GL_OP_SET_LT_EXT"),Regal::Token::GLenumToString(GL_OP_SET_LT_EXT));
    EXPECT_EQ(std::string("GL_OP_SUB_EXT"),Regal::Token::GLenumToString(GL_OP_SUB_EXT));
    EXPECT_EQ(std::string("GL_OUTPUT_FOG_EXT"),Regal::Token::GLenumToString(GL_OUTPUT_FOG_EXT));
    EXPECT_EQ(std::string("GL_OUTPUT_VERTEX_EXT"),Regal::Token::GLenumToString(GL_OUTPUT_VERTEX_EXT));
    EXPECT_EQ(std::string("GL_PACK_CMYK_HINT_EXT"),Regal::Token::GLenumToString(GL_PACK_CMYK_HINT_EXT));
    EXPECT_EQ(std::string("GL_PACK_COMPRESSED_BLOCK_DEPTH"),Regal::Token::GLenumToString(GL_PACK_COMPRESSED_BLOCK_DEPTH));
    EXPECT_EQ(std::string("GL_PACK_COMPRESSED_BLOCK_HEIGHT"),Regal::Token::GLenumToString(GL_PACK_COMPRESSED_BLOCK_HEIGHT));
    EXPECT_EQ(std::string("GL_PACK_COMPRESSED_BLOCK_SIZE"),Regal::Token::GLenumToString(GL_PACK_COMPRESSED_BLOCK_SIZE));
    EXPECT_EQ(std::string("GL_PACK_COMPRESSED_BLOCK_WIDTH"),Regal::Token::GLenumToString(GL_PACK_COMPRESSED_BLOCK_WIDTH));
//    EXPECT_EQ(std::string("GL_PACK_IMAGE_DEPTH_SGIS"),Regal::Token::GLenumToString(GL_PACK_IMAGE_DEPTH_SGIS));
    EXPECT_EQ(std::string("GL_PACK_IMAGE_HEIGHT"),Regal::Token::GLenumToString(GL_PACK_IMAGE_HEIGHT));
    EXPECT_EQ(std::string("GL_PACK_IMAGE_HEIGHT"),Regal::Token::GLenumToString(GL_PACK_IMAGE_HEIGHT_EXT));
    EXPECT_EQ(std::string("GL_PACK_INVERT_MESA"),Regal::Token::GLenumToString(GL_PACK_INVERT_MESA));
    EXPECT_EQ(std::string("GL_PACK_RESAMPLE_OML"),Regal::Token::GLenumToString(GL_PACK_RESAMPLE_OML));
    EXPECT_EQ(std::string("GL_PACK_RESAMPLE_SGIX"),Regal::Token::GLenumToString(GL_PACK_RESAMPLE_SGIX));
    EXPECT_EQ(std::string("GL_PACK_ROW_BYTES_APPLE"),Regal::Token::GLenumToString(GL_PACK_ROW_BYTES_APPLE));
    EXPECT_EQ(std::string("GL_PACK_SKIP_IMAGES"),Regal::Token::GLenumToString(GL_PACK_SKIP_IMAGES));
    EXPECT_EQ(std::string("GL_PACK_SKIP_IMAGES"),Regal::Token::GLenumToString(GL_PACK_SKIP_IMAGES_EXT));
//    EXPECT_EQ(std::string("GL_PACK_SKIP_VOLUMES_SGIS"),Regal::Token::GLenumToString(GL_PACK_SKIP_VOLUMES_SGIS));
//    EXPECT_EQ(std::string("GL_PACK_SUBSAMPLE_RATE_SGIX"),Regal::Token::GLenumToString(GL_PACK_SUBSAMPLE_RATE_SGIX));
    EXPECT_EQ(std::string("GL_PARALLEL_ARRAYS_INTEL"),Regal::Token::GLenumToString(GL_PARALLEL_ARRAYS_INTEL));
    EXPECT_EQ(std::string("GL_PARTIAL_SUCCESS_NV"),Regal::Token::GLenumToString(GL_PARTIAL_SUCCESS_NV));
    EXPECT_EQ(std::string("GL_PASS_THROUGH_NV"),Regal::Token::GLenumToString(GL_PASS_THROUGH_NV));
    EXPECT_EQ(std::string("GL_PATCHES"),Regal::Token::GLenumToString(GL_PATCHES));
    EXPECT_EQ(std::string("GL_PATCH_DEFAULT_INNER_LEVEL"),Regal::Token::GLenumToString(GL_PATCH_DEFAULT_INNER_LEVEL));
    EXPECT_EQ(std::string("GL_PATCH_DEFAULT_OUTER_LEVEL"),Regal::Token::GLenumToString(GL_PATCH_DEFAULT_OUTER_LEVEL));
    EXPECT_EQ(std::string("GL_PATCH_VERTICES"),Regal::Token::GLenumToString(GL_PATCH_VERTICES));
    EXPECT_EQ(std::string("GL_PATH_CLIENT_LENGTH_NV"),Regal::Token::GLenumToString(GL_PATH_CLIENT_LENGTH_NV));
    EXPECT_EQ(std::string("GL_PATH_COMMAND_COUNT_NV"),Regal::Token::GLenumToString(GL_PATH_COMMAND_COUNT_NV));
    EXPECT_EQ(std::string("GL_PATH_COMPUTED_LENGTH_NV"),Regal::Token::GLenumToString(GL_PATH_COMPUTED_LENGTH_NV));
    EXPECT_EQ(std::string("GL_PATH_COORD_COUNT_NV"),Regal::Token::GLenumToString(GL_PATH_COORD_COUNT_NV));
    EXPECT_EQ(std::string("GL_PATH_COVER_DEPTH_FUNC_NV"),Regal::Token::GLenumToString(GL_PATH_COVER_DEPTH_FUNC_NV));
    EXPECT_EQ(std::string("GL_PATH_DASH_ARRAY_COUNT_NV"),Regal::Token::GLenumToString(GL_PATH_DASH_ARRAY_COUNT_NV));
    EXPECT_EQ(std::string("GL_PATH_DASH_CAPS_NV"),Regal::Token::GLenumToString(GL_PATH_DASH_CAPS_NV));
    EXPECT_EQ(std::string("GL_PATH_DASH_OFFSET_NV"),Regal::Token::GLenumToString(GL_PATH_DASH_OFFSET_NV));
    EXPECT_EQ(std::string("GL_PATH_DASH_OFFSET_RESET_NV"),Regal::Token::GLenumToString(GL_PATH_DASH_OFFSET_RESET_NV));
    EXPECT_EQ(std::string("GL_PATH_END_CAPS_NV"),Regal::Token::GLenumToString(GL_PATH_END_CAPS_NV));
    EXPECT_EQ(std::string("GL_PATH_ERROR_POSITION_NV"),Regal::Token::GLenumToString(GL_PATH_ERROR_POSITION_NV));
    EXPECT_EQ(std::string("GL_PATH_FILL_BOUNDING_BOX_NV"),Regal::Token::GLenumToString(GL_PATH_FILL_BOUNDING_BOX_NV));
    EXPECT_EQ(std::string("GL_PATH_FILL_COVER_MODE_NV"),Regal::Token::GLenumToString(GL_PATH_FILL_COVER_MODE_NV));
    EXPECT_EQ(std::string("GL_PATH_FILL_MASK_NV"),Regal::Token::GLenumToString(GL_PATH_FILL_MASK_NV));
    EXPECT_EQ(std::string("GL_PATH_FILL_MODE_NV"),Regal::Token::GLenumToString(GL_PATH_FILL_MODE_NV));
    EXPECT_EQ(std::string("GL_PATH_FOG_GEN_MODE_NV"),Regal::Token::GLenumToString(GL_PATH_FOG_GEN_MODE_NV));
    EXPECT_EQ(std::string("GL_PATH_FORMAT_PS_NV"),Regal::Token::GLenumToString(GL_PATH_FORMAT_PS_NV));
    EXPECT_EQ(std::string("GL_PATH_FORMAT_SVG_NV"),Regal::Token::GLenumToString(GL_PATH_FORMAT_SVG_NV));
    EXPECT_EQ(std::string("GL_PATH_GEN_COEFF_NV"),Regal::Token::GLenumToString(GL_PATH_GEN_COEFF_NV));
    EXPECT_EQ(std::string("GL_PATH_GEN_COLOR_FORMAT_NV"),Regal::Token::GLenumToString(GL_PATH_GEN_COLOR_FORMAT_NV));
    EXPECT_EQ(std::string("GL_PATH_GEN_COMPONENTS_NV"),Regal::Token::GLenumToString(GL_PATH_GEN_COMPONENTS_NV));
    EXPECT_EQ(std::string("GL_PATH_GEN_MODE_NV"),Regal::Token::GLenumToString(GL_PATH_GEN_MODE_NV));
    EXPECT_EQ(std::string("GL_PATH_INITIAL_DASH_CAP_NV"),Regal::Token::GLenumToString(GL_PATH_INITIAL_DASH_CAP_NV));
    EXPECT_EQ(std::string("GL_PATH_INITIAL_END_CAP_NV"),Regal::Token::GLenumToString(GL_PATH_INITIAL_END_CAP_NV));
    EXPECT_EQ(std::string("GL_PATH_JOIN_STYLE_NV"),Regal::Token::GLenumToString(GL_PATH_JOIN_STYLE_NV));
    EXPECT_EQ(std::string("GL_PATH_MITER_LIMIT_NV"),Regal::Token::GLenumToString(GL_PATH_MITER_LIMIT_NV));
    EXPECT_EQ(std::string("GL_PATH_OBJECT_BOUNDING_BOX_NV"),Regal::Token::GLenumToString(GL_PATH_OBJECT_BOUNDING_BOX_NV));
//    EXPECT_EQ(std::string("GL_PATH_SAMPLE_QUALITY_NV"),Regal::Token::GLenumToString(GL_PATH_SAMPLE_QUALITY_NV));
    EXPECT_EQ(std::string("GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV"),Regal::Token::GLenumToString(GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV));
    EXPECT_EQ(std::string("GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV"),Regal::Token::GLenumToString(GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV));
    EXPECT_EQ(std::string("GL_PATH_STENCIL_FUNC_NV"),Regal::Token::GLenumToString(GL_PATH_STENCIL_FUNC_NV));
    EXPECT_EQ(std::string("GL_PATH_STENCIL_REF_NV"),Regal::Token::GLenumToString(GL_PATH_STENCIL_REF_NV));
    EXPECT_EQ(std::string("GL_PATH_STENCIL_VALUE_MASK_NV"),Regal::Token::GLenumToString(GL_PATH_STENCIL_VALUE_MASK_NV));
    EXPECT_EQ(std::string("GL_PATH_STROKE_BOUNDING_BOX_NV"),Regal::Token::GLenumToString(GL_PATH_STROKE_BOUNDING_BOX_NV));
//    EXPECT_EQ(std::string("GL_PATH_STROKE_BOUND_NV"),Regal::Token::GLenumToString(GL_PATH_STROKE_BOUND_NV));
    EXPECT_EQ(std::string("GL_PATH_STROKE_COVER_MODE_NV"),Regal::Token::GLenumToString(GL_PATH_STROKE_COVER_MODE_NV));
    EXPECT_EQ(std::string("GL_PATH_STROKE_MASK_NV"),Regal::Token::GLenumToString(GL_PATH_STROKE_MASK_NV));
//    EXPECT_EQ(std::string("GL_PATH_STROKE_OVERSAMPLE_COUNT_NV"),Regal::Token::GLenumToString(GL_PATH_STROKE_OVERSAMPLE_COUNT_NV));
    EXPECT_EQ(std::string("GL_PATH_STROKE_WIDTH_NV"),Regal::Token::GLenumToString(GL_PATH_STROKE_WIDTH_NV));
    EXPECT_EQ(std::string("GL_PATH_TERMINAL_DASH_CAP_NV"),Regal::Token::GLenumToString(GL_PATH_TERMINAL_DASH_CAP_NV));
    EXPECT_EQ(std::string("GL_PATH_TERMINAL_END_CAP_NV"),Regal::Token::GLenumToString(GL_PATH_TERMINAL_END_CAP_NV));
    EXPECT_EQ(std::string("GL_PERCENTAGE_AMD"),Regal::Token::GLenumToString(GL_PERCENTAGE_AMD));
    EXPECT_EQ(std::string("GL_PERFMON_RESULT_AMD"),Regal::Token::GLenumToString(GL_PERFMON_RESULT_AMD));
    EXPECT_EQ(std::string("GL_PERFMON_RESULT_AVAILABLE_AMD"),Regal::Token::GLenumToString(GL_PERFMON_RESULT_AVAILABLE_AMD));
    EXPECT_EQ(std::string("GL_PERFMON_RESULT_SIZE_AMD"),Regal::Token::GLenumToString(GL_PERFMON_RESULT_SIZE_AMD));
    EXPECT_EQ(std::string("GL_PERFORMANCE_MONITOR_AMD"),Regal::Token::GLenumToString(GL_PERFORMANCE_MONITOR_AMD));
    EXPECT_EQ(std::string("GL_PERTURB_EXT"),Regal::Token::GLenumToString(GL_PERTURB_EXT));
    EXPECT_EQ(std::string("GL_PER_STAGE_CONSTANTS_NV"),Regal::Token::GLenumToString(GL_PER_STAGE_CONSTANTS_NV));
    EXPECT_EQ(std::string("GL_PHONG_HINT_WIN"),Regal::Token::GLenumToString(GL_PHONG_HINT_WIN));
    EXPECT_EQ(std::string("GL_PHONG_WIN"),Regal::Token::GLenumToString(GL_PHONG_WIN));
    EXPECT_EQ(std::string("GL_PIXEL_COUNT_AVAILABLE_NV"),Regal::Token::GLenumToString(GL_PIXEL_COUNT_AVAILABLE_NV));
    EXPECT_EQ(std::string("GL_PIXEL_COUNT_NV"),Regal::Token::GLenumToString(GL_PIXEL_COUNT_NV));
    EXPECT_EQ(std::string("GL_PIXEL_CUBIC_WEIGHT_EXT"),Regal::Token::GLenumToString(GL_PIXEL_CUBIC_WEIGHT_EXT));
//  EXPECT_EQ(std::string("GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS"),Regal::Token::GLenumToString(GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS));
//  EXPECT_EQ(std::string("GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS"),Regal::Token::GLenumToString(GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS));
//  EXPECT_EQ(std::string("GL_PIXEL_GROUP_COLOR_SGIS"),Regal::Token::GLenumToString(GL_PIXEL_GROUP_COLOR_SGIS));
    EXPECT_EQ(std::string("GL_PIXEL_MAG_FILTER_EXT"),Regal::Token::GLenumToString(GL_PIXEL_MAG_FILTER_EXT));
    EXPECT_EQ(std::string("GL_PIXEL_MIN_FILTER_EXT"),Regal::Token::GLenumToString(GL_PIXEL_MIN_FILTER_EXT));
    EXPECT_EQ(std::string("GL_PIXEL_PACK_BUFFER"),Regal::Token::GLenumToString(GL_PIXEL_PACK_BUFFER));
    EXPECT_EQ(std::string("GL_PIXEL_PACK_BUFFER"),Regal::Token::GLenumToString(GL_PIXEL_PACK_BUFFER_ARB));
    EXPECT_EQ(std::string("GL_PIXEL_PACK_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_PIXEL_PACK_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_PIXEL_PACK_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_PIXEL_PACK_BUFFER_BINDING_ARB));
    EXPECT_EQ(std::string("GL_PIXEL_PACK_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_PIXEL_PACK_BUFFER_BINDING_EXT));
    EXPECT_EQ(std::string("GL_PIXEL_PACK_BUFFER"),Regal::Token::GLenumToString(GL_PIXEL_PACK_BUFFER_EXT));
//    EXPECT_EQ(std::string("GL_PIXEL_TEXTURE_SGIS"),Regal::Token::GLenumToString(GL_PIXEL_TEXTURE_SGIS));
//    EXPECT_EQ(std::string("GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TEX_GEN_MODE_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TEX_GEN_MODE_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TEX_GEN_Q_CEILING_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TEX_GEN_Q_CEILING_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TEX_GEN_Q_ROUND_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TEX_GEN_Q_ROUND_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TEX_GEN_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TEX_GEN_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TILE_CACHE_INCREMENT_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TILE_CACHE_INCREMENT_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TILE_CACHE_SIZE_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TILE_CACHE_SIZE_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TILE_GRID_DEPTH_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TILE_GRID_DEPTH_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TILE_GRID_HEIGHT_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TILE_GRID_HEIGHT_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TILE_GRID_WIDTH_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TILE_GRID_WIDTH_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TILE_HEIGHT_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TILE_HEIGHT_SGIX));
//    EXPECT_EQ(std::string("GL_PIXEL_TILE_WIDTH_SGIX"),Regal::Token::GLenumToString(GL_PIXEL_TILE_WIDTH_SGIX));
    EXPECT_EQ(std::string("GL_PIXEL_UNPACK_BUFFER"),Regal::Token::GLenumToString(GL_PIXEL_UNPACK_BUFFER));
    EXPECT_EQ(std::string("GL_PIXEL_UNPACK_BUFFER"),Regal::Token::GLenumToString(GL_PIXEL_UNPACK_BUFFER_ARB));
    EXPECT_EQ(std::string("GL_PIXEL_UNPACK_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_PIXEL_UNPACK_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_PIXEL_UNPACK_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_PIXEL_UNPACK_BUFFER_BINDING_ARB));
    EXPECT_EQ(std::string("GL_PIXEL_UNPACK_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_PIXEL_UNPACK_BUFFER_BINDING_EXT));
    EXPECT_EQ(std::string("GL_PIXEL_UNPACK_BUFFER"),Regal::Token::GLenumToString(GL_PIXEL_UNPACK_BUFFER_EXT));
    EXPECT_EQ(std::string("GL_PN_TRIANGLES_ATI"),Regal::Token::GLenumToString(GL_PN_TRIANGLES_ATI));
    EXPECT_EQ(std::string("GL_PN_TRIANGLES_NORMAL_MODE_ATI"),Regal::Token::GLenumToString(GL_PN_TRIANGLES_NORMAL_MODE_ATI));
    EXPECT_EQ(std::string("GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI"),Regal::Token::GLenumToString(GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI));
    EXPECT_EQ(std::string("GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI"),Regal::Token::GLenumToString(GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI));
    EXPECT_EQ(std::string("GL_PN_TRIANGLES_POINT_MODE_ATI"),Regal::Token::GLenumToString(GL_PN_TRIANGLES_POINT_MODE_ATI));
    EXPECT_EQ(std::string("GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI"),Regal::Token::GLenumToString(GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI));
    EXPECT_EQ(std::string("GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI"),Regal::Token::GLenumToString(GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI));
    EXPECT_EQ(std::string("GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI"),Regal::Token::GLenumToString(GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI));
    EXPECT_EQ(std::string("GL_POINT_DISTANCE_ATTENUATION"),Regal::Token::GLenumToString(GL_POINT_DISTANCE_ATTENUATION));
    EXPECT_EQ(std::string("GL_POINT_DISTANCE_ATTENUATION"),Regal::Token::GLenumToString(GL_POINT_DISTANCE_ATTENUATION_ARB));
    EXPECT_EQ(std::string("GL_POINT_FADE_THRESHOLD_SIZE"),Regal::Token::GLenumToString(GL_POINT_FADE_THRESHOLD_SIZE));
    EXPECT_EQ(std::string("GL_POINT_FADE_THRESHOLD_SIZE"),Regal::Token::GLenumToString(GL_POINT_FADE_THRESHOLD_SIZE_ARB));
    EXPECT_EQ(std::string("GL_POINT_FADE_THRESHOLD_SIZE"),Regal::Token::GLenumToString(GL_POINT_FADE_THRESHOLD_SIZE_EXT));
//    EXPECT_EQ(std::string("GL_POINT_FADE_THRESHOLD_SIZE_SGIS"),Regal::Token::GLenumToString(GL_POINT_FADE_THRESHOLD_SIZE_SGIS));
    EXPECT_EQ(std::string("GL_POINT_SIZE_MAX"),Regal::Token::GLenumToString(GL_POINT_SIZE_MAX));
    EXPECT_EQ(std::string("GL_POINT_SIZE_MAX"),Regal::Token::GLenumToString(GL_POINT_SIZE_MAX_ARB));
    EXPECT_EQ(std::string("GL_POINT_SIZE_MAX"),Regal::Token::GLenumToString(GL_POINT_SIZE_MAX_EXT));
//    EXPECT_EQ(std::string("GL_POINT_SIZE_MAX_SGIS"),Regal::Token::GLenumToString(GL_POINT_SIZE_MAX_SGIS));
    EXPECT_EQ(std::string("GL_POINT_SIZE_MIN"),Regal::Token::GLenumToString(GL_POINT_SIZE_MIN));
    EXPECT_EQ(std::string("GL_POINT_SIZE_MIN"),Regal::Token::GLenumToString(GL_POINT_SIZE_MIN_ARB));
    EXPECT_EQ(std::string("GL_POINT_SIZE_MIN"),Regal::Token::GLenumToString(GL_POINT_SIZE_MIN_EXT));
//    EXPECT_EQ(std::string("GL_POINT_SIZE_MIN_SGIS"),Regal::Token::GLenumToString(GL_POINT_SIZE_MIN_SGIS));
    EXPECT_EQ(std::string("GL_POINT_SPRITE"),Regal::Token::GLenumToString(GL_POINT_SPRITE));
    EXPECT_EQ(std::string("GL_POINT_SPRITE"),Regal::Token::GLenumToString(GL_POINT_SPRITE_ARB));
    EXPECT_EQ(std::string("GL_POINT_SPRITE_COORD_ORIGIN"),Regal::Token::GLenumToString(GL_POINT_SPRITE_COORD_ORIGIN));
    EXPECT_EQ(std::string("GL_POINT_SPRITE_NV"),Regal::Token::GLenumToString(GL_POINT_SPRITE_NV));
    EXPECT_EQ(std::string("GL_POINT_SPRITE_R_MODE_NV"),Regal::Token::GLenumToString(GL_POINT_SPRITE_R_MODE_NV));
    EXPECT_EQ(std::string("GL_POLYGON_OFFSET_BIAS_EXT"),Regal::Token::GLenumToString(GL_POLYGON_OFFSET_BIAS_EXT));
    EXPECT_EQ(std::string("GL_POLYGON_OFFSET_EXT"),Regal::Token::GLenumToString(GL_POLYGON_OFFSET_EXT));
    EXPECT_EQ(std::string("GL_POLYGON_OFFSET_FACTOR_EXT"),Regal::Token::GLenumToString(GL_POLYGON_OFFSET_FACTOR_EXT));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_ALPHA_BIAS"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_ALPHA_BIAS));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_ALPHA_BIAS"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_ALPHA_SCALE"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_ALPHA_SCALE));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_ALPHA_SCALE"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_BLUE_BIAS"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_BLUE_BIAS));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_BLUE_BIAS"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_BLUE_SCALE"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_BLUE_SCALE));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_BLUE_SCALE"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_COLOR_TABLE"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_COLOR_TABLE));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_COLOR_TABLE"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_GREEN_BIAS"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_GREEN_BIAS));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_GREEN_BIAS"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_GREEN_SCALE"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_GREEN_SCALE));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_GREEN_SCALE"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_RED_BIAS"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_RED_BIAS));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_RED_BIAS"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_RED_BIAS_SGI));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_RED_SCALE"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_RED_SCALE));
    EXPECT_EQ(std::string("GL_POST_COLOR_MATRIX_RED_SCALE"),Regal::Token::GLenumToString(GL_POST_COLOR_MATRIX_RED_SCALE_SGI));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_ALPHA_BIAS"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_ALPHA_BIAS));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_ALPHA_BIAS"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_ALPHA_BIAS_EXT));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_ALPHA_SCALE"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_ALPHA_SCALE));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_ALPHA_SCALE"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_ALPHA_SCALE_EXT));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_BLUE_BIAS"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_BLUE_BIAS));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_BLUE_BIAS"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_BLUE_BIAS_EXT));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_BLUE_SCALE"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_BLUE_SCALE));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_BLUE_SCALE"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_BLUE_SCALE_EXT));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_COLOR_TABLE"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_COLOR_TABLE));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_COLOR_TABLE"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_COLOR_TABLE_SGI));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_GREEN_BIAS"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_GREEN_BIAS));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_GREEN_BIAS"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_GREEN_BIAS_EXT));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_GREEN_SCALE"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_GREEN_SCALE));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_GREEN_SCALE"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_GREEN_SCALE_EXT));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_RED_BIAS"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_RED_BIAS));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_RED_BIAS"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_RED_BIAS_EXT));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_RED_SCALE"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_RED_SCALE));
    EXPECT_EQ(std::string("GL_POST_CONVOLUTION_RED_SCALE"),Regal::Token::GLenumToString(GL_POST_CONVOLUTION_RED_SCALE_EXT));
//    EXPECT_EQ(std::string("GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP"),Regal::Token::GLenumToString(GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP));
    EXPECT_EQ(std::string("GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX"),Regal::Token::GLenumToString(GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX));
    EXPECT_EQ(std::string("GL_POST_TEXTURE_FILTER_BIAS_SGIX"),Regal::Token::GLenumToString(GL_POST_TEXTURE_FILTER_BIAS_SGIX));
    EXPECT_EQ(std::string("GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX"),Regal::Token::GLenumToString(GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX));
    EXPECT_EQ(std::string("GL_POST_TEXTURE_FILTER_SCALE_SGIX"),Regal::Token::GLenumToString(GL_POST_TEXTURE_FILTER_SCALE_SGIX));
    EXPECT_EQ(std::string("GL_PREFER_DOUBLEBUFFER_HINT_PGI"),Regal::Token::GLenumToString(GL_PREFER_DOUBLEBUFFER_HINT_PGI));
    EXPECT_EQ(std::string("GL_PRESENT_DURATION_NV"),Regal::Token::GLenumToString(GL_PRESENT_DURATION_NV));
    EXPECT_EQ(std::string("GL_PRESENT_TIME_NV"),Regal::Token::GLenumToString(GL_PRESENT_TIME_NV));
    EXPECT_EQ(std::string("GL_PRESERVE_ATI"),Regal::Token::GLenumToString(GL_PRESERVE_ATI));
    EXPECT_EQ(std::string("GL_PREVIOUS"),Regal::Token::GLenumToString(GL_PREVIOUS));
    EXPECT_EQ(std::string("GL_PREVIOUS"),Regal::Token::GLenumToString(GL_PREVIOUS_ARB));
    EXPECT_EQ(std::string("GL_PREVIOUS"),Regal::Token::GLenumToString(GL_PREVIOUS_EXT));
    EXPECT_EQ(std::string("GL_PREVIOUS_TEXTURE_INPUT_NV"),Regal::Token::GLenumToString(GL_PREVIOUS_TEXTURE_INPUT_NV));
    EXPECT_EQ(std::string("GL_PRIMARY_COLOR"),Regal::Token::GLenumToString(GL_PRIMARY_COLOR));
    EXPECT_EQ(std::string("GL_PRIMARY_COLOR"),Regal::Token::GLenumToString(GL_PRIMARY_COLOR_ARB));
    EXPECT_EQ(std::string("GL_PRIMARY_COLOR"),Regal::Token::GLenumToString(GL_PRIMARY_COLOR_EXT));
    EXPECT_EQ(std::string("GL_PRIMARY_COLOR_NV"),Regal::Token::GLenumToString(GL_PRIMARY_COLOR_NV));
    EXPECT_EQ(std::string("GL_PRIMITIVES_GENERATED"),Regal::Token::GLenumToString(GL_PRIMITIVES_GENERATED));
    EXPECT_EQ(std::string("GL_PRIMITIVES_GENERATED"),Regal::Token::GLenumToString(GL_PRIMITIVES_GENERATED_EXT));
    EXPECT_EQ(std::string("GL_PRIMITIVES_GENERATED_NV"),Regal::Token::GLenumToString(GL_PRIMITIVES_GENERATED_NV));
    EXPECT_EQ(std::string("GL_PRIMITIVE_ID_NV"),Regal::Token::GLenumToString(GL_PRIMITIVE_ID_NV));
    EXPECT_EQ(std::string("GL_PRIMITIVE_RESTART"),Regal::Token::GLenumToString(GL_PRIMITIVE_RESTART));
    EXPECT_EQ(std::string("GL_PRIMITIVE_RESTART_INDEX"),Regal::Token::GLenumToString(GL_PRIMITIVE_RESTART_INDEX));
    EXPECT_EQ(std::string("GL_PRIMITIVE_RESTART_INDEX_NV"),Regal::Token::GLenumToString(GL_PRIMITIVE_RESTART_INDEX_NV));
    EXPECT_EQ(std::string("GL_PRIMITIVE_RESTART_NV"),Regal::Token::GLenumToString(GL_PRIMITIVE_RESTART_NV));
    EXPECT_EQ(std::string("GL_PROGRAM_ADDRESS_REGISTERS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_ADDRESS_REGISTERS_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_ALU_INSTRUCTIONS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_ALU_INSTRUCTIONS_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_ATTRIBS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_ATTRIBS_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_ATTRIB_COMPONENTS_NV"),Regal::Token::GLenumToString(GL_PROGRAM_ATTRIB_COMPONENTS_NV));
    EXPECT_EQ(std::string("GL_PROGRAM_BINARY_FORMATS"),Regal::Token::GLenumToString(GL_PROGRAM_BINARY_FORMATS));
    EXPECT_EQ(std::string("GL_PROGRAM_BINARY_LENGTH"),Regal::Token::GLenumToString(GL_PROGRAM_BINARY_LENGTH));
    EXPECT_EQ(std::string("GL_PROGRAM_BINARY_RETRIEVABLE_HINT"),Regal::Token::GLenumToString(GL_PROGRAM_BINARY_RETRIEVABLE_HINT));
    EXPECT_EQ(std::string("GL_PROGRAM_BINDING_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_BINDING_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_ERROR_POSITION_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_ERROR_POSITION_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_ERROR_POSITION_NV"),Regal::Token::GLenumToString(GL_PROGRAM_ERROR_POSITION_NV));
    EXPECT_EQ(std::string("GL_PROGRAM_ERROR_STRING_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_ERROR_STRING_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_ERROR_STRING_NV"),Regal::Token::GLenumToString(GL_PROGRAM_ERROR_STRING_NV));
    EXPECT_EQ(std::string("GL_PROGRAM_FORMAT_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_FORMAT_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_FORMAT_ASCII_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_FORMAT_ASCII_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_INSTRUCTIONS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_INSTRUCTIONS_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_LENGTH_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_LENGTH_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_LENGTH_NV"),Regal::Token::GLenumToString(GL_PROGRAM_LENGTH_NV));
    EXPECT_EQ(std::string("GL_PROGRAM_MATRIX_EXT"),Regal::Token::GLenumToString(GL_PROGRAM_MATRIX_EXT));
    EXPECT_EQ(std::string("GL_PROGRAM_MATRIX_STACK_DEPTH_EXT"),Regal::Token::GLenumToString(GL_PROGRAM_MATRIX_STACK_DEPTH_EXT));
    EXPECT_EQ(std::string("GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_NATIVE_ATTRIBS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_NATIVE_ATTRIBS_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_NATIVE_PARAMETERS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_NATIVE_PARAMETERS_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_NATIVE_TEMPORARIES_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_NATIVE_TEMPORARIES_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_OBJECT_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_OBJECT_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_PARAMETERS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_PARAMETERS_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_PARAMETER_NV"),Regal::Token::GLenumToString(GL_PROGRAM_PARAMETER_NV));
    EXPECT_EQ(std::string("GL_PROGRAM_PIPELINE_BINDING"),Regal::Token::GLenumToString(GL_PROGRAM_PIPELINE_BINDING));
    EXPECT_EQ(std::string("GL_PROGRAM_POINT_SIZE"),Regal::Token::GLenumToString(GL_PROGRAM_POINT_SIZE));
    EXPECT_EQ(std::string("GL_PROGRAM_POINT_SIZE"),Regal::Token::GLenumToString(GL_PROGRAM_POINT_SIZE_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_POINT_SIZE"),Regal::Token::GLenumToString(GL_PROGRAM_POINT_SIZE_EXT));
    EXPECT_EQ(std::string("GL_PROGRAM_RESIDENT_NV"),Regal::Token::GLenumToString(GL_PROGRAM_RESIDENT_NV));
    EXPECT_EQ(std::string("GL_PROGRAM_RESULT_COMPONENTS_NV"),Regal::Token::GLenumToString(GL_PROGRAM_RESULT_COMPONENTS_NV));
    EXPECT_EQ(std::string("GL_PROGRAM_SEPARABLE"),Regal::Token::GLenumToString(GL_PROGRAM_SEPARABLE));
    EXPECT_EQ(std::string("GL_PROGRAM_STRING_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_STRING_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_STRING_NV"),Regal::Token::GLenumToString(GL_PROGRAM_STRING_NV));
    EXPECT_EQ(std::string("GL_PROGRAM_TARGET_NV"),Regal::Token::GLenumToString(GL_PROGRAM_TARGET_NV));
    EXPECT_EQ(std::string("GL_PROGRAM_TEMPORARIES_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_TEMPORARIES_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_TEX_INDIRECTIONS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_TEX_INDIRECTIONS_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_TEX_INSTRUCTIONS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_TEX_INSTRUCTIONS_ARB));
    EXPECT_EQ(std::string("GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB"),Regal::Token::GLenumToString(GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB));
    EXPECT_EQ(std::string("GL_PROVOKING_VERTEX"),Regal::Token::GLenumToString(GL_PROVOKING_VERTEX));
    EXPECT_EQ(std::string("GL_PROVOKING_VERTEX"),Regal::Token::GLenumToString(GL_PROVOKING_VERTEX_EXT));
    EXPECT_EQ(std::string("GL_PROXY_COLOR_TABLE"),Regal::Token::GLenumToString(GL_PROXY_COLOR_TABLE));
    EXPECT_EQ(std::string("GL_PROXY_COLOR_TABLE"),Regal::Token::GLenumToString(GL_PROXY_COLOR_TABLE_SGI));
    EXPECT_EQ(std::string("GL_PROXY_HISTOGRAM"),Regal::Token::GLenumToString(GL_PROXY_HISTOGRAM));
    EXPECT_EQ(std::string("GL_PROXY_HISTOGRAM"),Regal::Token::GLenumToString(GL_PROXY_HISTOGRAM_EXT));
    EXPECT_EQ(std::string("GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE"),Regal::Token::GLenumToString(GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE));
    EXPECT_EQ(std::string("GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE"),Regal::Token::GLenumToString(GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI));
    EXPECT_EQ(std::string("GL_PROXY_POST_CONVOLUTION_COLOR_TABLE"),Regal::Token::GLenumToString(GL_PROXY_POST_CONVOLUTION_COLOR_TABLE));
    EXPECT_EQ(std::string("GL_PROXY_POST_CONVOLUTION_COLOR_TABLE"),Regal::Token::GLenumToString(GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI));
//    EXPECT_EQ(std::string("GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP"),Regal::Token::GLenumToString(GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP));
    EXPECT_EQ(std::string("GL_PROXY_TEXTURE_COLOR_TABLE_SGI"),Regal::Token::GLenumToString(GL_PROXY_TEXTURE_COLOR_TABLE_SGI));
    EXPECT_EQ(std::string("GL_PROXY_TEXTURE_CUBE_MAP"),Regal::Token::GLenumToString(GL_PROXY_TEXTURE_CUBE_MAP));
    EXPECT_EQ(std::string("GL_PROXY_TEXTURE_CUBE_MAP_ARB"),Regal::Token::GLenumToString(GL_PROXY_TEXTURE_CUBE_MAP_ARB));
    EXPECT_EQ(std::string("GL_PROXY_TEXTURE_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_PROXY_TEXTURE_CUBE_MAP_ARRAY));
    EXPECT_EQ(std::string("GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB"),Regal::Token::GLenumToString(GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB));
    EXPECT_EQ(std::string("GL_PROXY_TEXTURE_CUBE_MAP"),Regal::Token::GLenumToString(GL_PROXY_TEXTURE_CUBE_MAP_EXT));
    EXPECT_EQ(std::string("GL_PROXY_TEXTURE_RECTANGLE"),Regal::Token::GLenumToString(GL_PROXY_TEXTURE_RECTANGLE));
    EXPECT_EQ(std::string("GL_PROXY_TEXTURE_RECTANGLE"),Regal::Token::GLenumToString(GL_PROXY_TEXTURE_RECTANGLE_ARB));
    EXPECT_EQ(std::string("GL_PROXY_TEXTURE_RECTANGLE_NV"),Regal::Token::GLenumToString(GL_PROXY_TEXTURE_RECTANGLE_NV));
    EXPECT_EQ(std::string("GL_PURGEABLE_APPLE"),Regal::Token::GLenumToString(GL_PURGEABLE_APPLE));
    EXPECT_EQ(std::string("GL_QUADRATIC_CURVE_TO_NV"),Regal::Token::GLenumToString(GL_QUADRATIC_CURVE_TO_NV));
    EXPECT_EQ(std::string("GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION"),Regal::Token::GLenumToString(GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION));
    EXPECT_EQ(std::string("GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION"),Regal::Token::GLenumToString(GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT));
    EXPECT_EQ(std::string("GL_QUAD_MESH_SUN"),Regal::Token::GLenumToString(GL_QUAD_MESH_SUN));
//    EXPECT_EQ(std::string("GL_QUAD_TEXTURE_SELECT_SGIS"),Regal::Token::GLenumToString(GL_QUAD_TEXTURE_SELECT_SGIS));
    EXPECT_EQ(std::string("GL_QUERY_BY_REGION_NO_WAIT"),Regal::Token::GLenumToString(GL_QUERY_BY_REGION_NO_WAIT));
    EXPECT_EQ(std::string("GL_QUERY_BY_REGION_NO_WAIT_NV"),Regal::Token::GLenumToString(GL_QUERY_BY_REGION_NO_WAIT_NV));
    EXPECT_EQ(std::string("GL_QUERY_BY_REGION_WAIT"),Regal::Token::GLenumToString(GL_QUERY_BY_REGION_WAIT));
    EXPECT_EQ(std::string("GL_QUERY_BY_REGION_WAIT_NV"),Regal::Token::GLenumToString(GL_QUERY_BY_REGION_WAIT_NV));
    EXPECT_EQ(std::string("GL_QUERY_NO_WAIT"),Regal::Token::GLenumToString(GL_QUERY_NO_WAIT));
    EXPECT_EQ(std::string("GL_QUERY_NO_WAIT_NV"),Regal::Token::GLenumToString(GL_QUERY_NO_WAIT_NV));
    EXPECT_EQ(std::string("GL_QUERY_OBJECT_AMD"),Regal::Token::GLenumToString(GL_QUERY_OBJECT_AMD));
    EXPECT_EQ(std::string("GL_QUERY_RESULT"),Regal::Token::GLenumToString(GL_QUERY_RESULT));
    EXPECT_EQ(std::string("GL_QUERY_RESULT"),Regal::Token::GLenumToString(GL_QUERY_RESULT_ARB));
    EXPECT_EQ(std::string("GL_QUERY_RESULT_AVAILABLE"),Regal::Token::GLenumToString(GL_QUERY_RESULT_AVAILABLE));
    EXPECT_EQ(std::string("GL_QUERY_RESULT_AVAILABLE"),Regal::Token::GLenumToString(GL_QUERY_RESULT_AVAILABLE_ARB));
    EXPECT_EQ(std::string("GL_QUERY_WAIT"),Regal::Token::GLenumToString(GL_QUERY_WAIT));
    EXPECT_EQ(std::string("GL_QUERY_WAIT_NV"),Regal::Token::GLenumToString(GL_QUERY_WAIT_NV));
    EXPECT_EQ(std::string("GL_RASTERIZER_DISCARD"),Regal::Token::GLenumToString(GL_RASTERIZER_DISCARD));
    EXPECT_EQ(std::string("GL_RASTERIZER_DISCARD"),Regal::Token::GLenumToString(GL_RASTERIZER_DISCARD_EXT));
    EXPECT_EQ(std::string("GL_RASTERIZER_DISCARD_NV"),Regal::Token::GLenumToString(GL_RASTERIZER_DISCARD_NV));
    EXPECT_EQ(std::string("GL_RASTER_POSITION_UNCLIPPED_IBM"),Regal::Token::GLenumToString(GL_RASTER_POSITION_UNCLIPPED_IBM));
    EXPECT_EQ(std::string("GL_READ_FRAMEBUFFER"),Regal::Token::GLenumToString(GL_READ_FRAMEBUFFER));
    EXPECT_EQ(std::string("GL_READ_FRAMEBUFFER_BINDING"),Regal::Token::GLenumToString(GL_READ_FRAMEBUFFER_BINDING));
    EXPECT_EQ(std::string("GL_READ_FRAMEBUFFER_BINDING"),Regal::Token::GLenumToString(GL_READ_FRAMEBUFFER_BINDING_EXT));
    EXPECT_EQ(std::string("GL_READ_FRAMEBUFFER"),Regal::Token::GLenumToString(GL_READ_FRAMEBUFFER_EXT));
    EXPECT_EQ(std::string("GL_READ_ONLY"),Regal::Token::GLenumToString(GL_READ_ONLY));
    EXPECT_EQ(std::string("GL_READ_ONLY"),Regal::Token::GLenumToString(GL_READ_ONLY_ARB));
    EXPECT_EQ(std::string("GL_READ_PIXEL_DATA_RANGE_LENGTH_NV"),Regal::Token::GLenumToString(GL_READ_PIXEL_DATA_RANGE_LENGTH_NV));
    EXPECT_EQ(std::string("GL_READ_PIXEL_DATA_RANGE_NV"),Regal::Token::GLenumToString(GL_READ_PIXEL_DATA_RANGE_NV));
    EXPECT_EQ(std::string("GL_READ_PIXEL_DATA_RANGE_POINTER_NV"),Regal::Token::GLenumToString(GL_READ_PIXEL_DATA_RANGE_POINTER_NV));
    EXPECT_EQ(std::string("GL_READ_WRITE"),Regal::Token::GLenumToString(GL_READ_WRITE));
    EXPECT_EQ(std::string("GL_READ_WRITE"),Regal::Token::GLenumToString(GL_READ_WRITE_ARB));
    EXPECT_EQ(std::string("GL_RECLAIM_MEMORY_HINT_PGI"),Regal::Token::GLenumToString(GL_RECLAIM_MEMORY_HINT_PGI));
    EXPECT_EQ(std::string("GL_RECT_NV"),Regal::Token::GLenumToString(GL_RECT_NV));
    EXPECT_EQ(std::string("GL_REDUCE"),Regal::Token::GLenumToString(GL_REDUCE));
    EXPECT_EQ(std::string("GL_REDUCE"),Regal::Token::GLenumToString(GL_REDUCE_EXT));
    EXPECT_EQ(std::string("GL_RED_INTEGER"),Regal::Token::GLenumToString(GL_RED_INTEGER));
    EXPECT_EQ(std::string("GL_RED_INTEGER"),Regal::Token::GLenumToString(GL_RED_INTEGER_EXT));
    EXPECT_EQ(std::string("GL_RED_MAX_CLAMP_INGR"),Regal::Token::GLenumToString(GL_RED_MAX_CLAMP_INGR));
    EXPECT_EQ(std::string("GL_RED_MIN_CLAMP_INGR"),Regal::Token::GLenumToString(GL_RED_MIN_CLAMP_INGR));
    EXPECT_EQ(std::string("GL_RED_SNORM"),Regal::Token::GLenumToString(GL_RED_SNORM));
//    EXPECT_EQ(std::string("GL_REFERENCE_PLANE_EQUATION_SGIX"),Regal::Token::GLenumToString(GL_REFERENCE_PLANE_EQUATION_SGIX));
//    EXPECT_EQ(std::string("GL_REFERENCE_PLANE_SGIX"),Regal::Token::GLenumToString(GL_REFERENCE_PLANE_SGIX));
    EXPECT_EQ(std::string("GL_REFLECTION_MAP"),Regal::Token::GLenumToString(GL_REFLECTION_MAP));
    EXPECT_EQ(std::string("GL_REFLECTION_MAP"),Regal::Token::GLenumToString(GL_REFLECTION_MAP_ARB));
    EXPECT_EQ(std::string("GL_REFLECTION_MAP"),Regal::Token::GLenumToString(GL_REFLECTION_MAP_EXT));
    EXPECT_EQ(std::string("GL_REFLECTION_MAP_NV"),Regal::Token::GLenumToString(GL_REFLECTION_MAP_NV));
    EXPECT_EQ(std::string("GL_REGISTER_COMBINERS_NV"),Regal::Token::GLenumToString(GL_REGISTER_COMBINERS_NV));
    EXPECT_EQ(std::string("GL_RELATIVE_ARC_TO_NV"),Regal::Token::GLenumToString(GL_RELATIVE_ARC_TO_NV));
    EXPECT_EQ(std::string("GL_RELATIVE_CUBIC_CURVE_TO_NV"),Regal::Token::GLenumToString(GL_RELATIVE_CUBIC_CURVE_TO_NV));
    EXPECT_EQ(std::string("GL_RELATIVE_HORIZONTAL_LINE_TO_NV"),Regal::Token::GLenumToString(GL_RELATIVE_HORIZONTAL_LINE_TO_NV));
    EXPECT_EQ(std::string("GL_RELATIVE_LARGE_CCW_ARC_TO_NV"),Regal::Token::GLenumToString(GL_RELATIVE_LARGE_CCW_ARC_TO_NV));
    EXPECT_EQ(std::string("GL_RELATIVE_LARGE_CW_ARC_TO_NV"),Regal::Token::GLenumToString(GL_RELATIVE_LARGE_CW_ARC_TO_NV));
    EXPECT_EQ(std::string("GL_RELATIVE_LINE_TO_NV"),Regal::Token::GLenumToString(GL_RELATIVE_LINE_TO_NV));
    EXPECT_EQ(std::string("GL_RELATIVE_MOVE_TO_NV"),Regal::Token::GLenumToString(GL_RELATIVE_MOVE_TO_NV));
    EXPECT_EQ(std::string("GL_RELATIVE_QUADRATIC_CURVE_TO_NV"),Regal::Token::GLenumToString(GL_RELATIVE_QUADRATIC_CURVE_TO_NV));
    EXPECT_EQ(std::string("GL_RELATIVE_SMALL_CCW_ARC_TO_NV"),Regal::Token::GLenumToString(GL_RELATIVE_SMALL_CCW_ARC_TO_NV));
    EXPECT_EQ(std::string("GL_RELATIVE_SMALL_CW_ARC_TO_NV"),Regal::Token::GLenumToString(GL_RELATIVE_SMALL_CW_ARC_TO_NV));
    EXPECT_EQ(std::string("GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV"),Regal::Token::GLenumToString(GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV));
    EXPECT_EQ(std::string("GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV"),Regal::Token::GLenumToString(GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV));
    EXPECT_EQ(std::string("GL_RELATIVE_VERTICAL_LINE_TO_NV"),Regal::Token::GLenumToString(GL_RELATIVE_VERTICAL_LINE_TO_NV));
    EXPECT_EQ(std::string("GL_RELEASED_APPLE"),Regal::Token::GLenumToString(GL_RELEASED_APPLE));
    EXPECT_EQ(std::string("GL_RENDERBUFFER"),Regal::Token::GLenumToString(GL_RENDERBUFFER));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_ALPHA_SIZE"),Regal::Token::GLenumToString(GL_RENDERBUFFER_ALPHA_SIZE));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_ALPHA_SIZE"),Regal::Token::GLenumToString(GL_RENDERBUFFER_ALPHA_SIZE_EXT));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_BINDING"),Regal::Token::GLenumToString(GL_RENDERBUFFER_BINDING));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_BINDING"),Regal::Token::GLenumToString(GL_RENDERBUFFER_BINDING_EXT));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_BLUE_SIZE"),Regal::Token::GLenumToString(GL_RENDERBUFFER_BLUE_SIZE));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_BLUE_SIZE"),Regal::Token::GLenumToString(GL_RENDERBUFFER_BLUE_SIZE_EXT));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_COLOR_SAMPLES_NV"),Regal::Token::GLenumToString(GL_RENDERBUFFER_COLOR_SAMPLES_NV));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_COVERAGE_SAMPLES_NV"),Regal::Token::GLenumToString(GL_RENDERBUFFER_COVERAGE_SAMPLES_NV));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_DEPTH_SIZE"),Regal::Token::GLenumToString(GL_RENDERBUFFER_DEPTH_SIZE));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_DEPTH_SIZE"),Regal::Token::GLenumToString(GL_RENDERBUFFER_DEPTH_SIZE_EXT));
    EXPECT_EQ(std::string("GL_RENDERBUFFER"),Regal::Token::GLenumToString(GL_RENDERBUFFER_EXT));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_FREE_MEMORY_ATI"),Regal::Token::GLenumToString(GL_RENDERBUFFER_FREE_MEMORY_ATI));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_GREEN_SIZE"),Regal::Token::GLenumToString(GL_RENDERBUFFER_GREEN_SIZE));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_GREEN_SIZE"),Regal::Token::GLenumToString(GL_RENDERBUFFER_GREEN_SIZE_EXT));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_HEIGHT"),Regal::Token::GLenumToString(GL_RENDERBUFFER_HEIGHT));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_HEIGHT"),Regal::Token::GLenumToString(GL_RENDERBUFFER_HEIGHT_EXT));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_INTERNAL_FORMAT"),Regal::Token::GLenumToString(GL_RENDERBUFFER_INTERNAL_FORMAT));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_INTERNAL_FORMAT"),Regal::Token::GLenumToString(GL_RENDERBUFFER_INTERNAL_FORMAT_EXT));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_RED_SIZE"),Regal::Token::GLenumToString(GL_RENDERBUFFER_RED_SIZE));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_RED_SIZE"),Regal::Token::GLenumToString(GL_RENDERBUFFER_RED_SIZE_EXT));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_SAMPLES"),Regal::Token::GLenumToString(GL_RENDERBUFFER_SAMPLES));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_SAMPLES"),Regal::Token::GLenumToString(GL_RENDERBUFFER_SAMPLES_EXT));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_STENCIL_SIZE"),Regal::Token::GLenumToString(GL_RENDERBUFFER_STENCIL_SIZE));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_STENCIL_SIZE"),Regal::Token::GLenumToString(GL_RENDERBUFFER_STENCIL_SIZE_EXT));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_WIDTH"),Regal::Token::GLenumToString(GL_RENDERBUFFER_WIDTH));
    EXPECT_EQ(std::string("GL_RENDERBUFFER_WIDTH"),Regal::Token::GLenumToString(GL_RENDERBUFFER_WIDTH_EXT));
    EXPECT_EQ(std::string("GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN"),Regal::Token::GLenumToString(GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN));
    EXPECT_EQ(std::string("GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN"),Regal::Token::GLenumToString(GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN));
    EXPECT_EQ(std::string("GL_REPLACEMENT_CODE_ARRAY_SUN"),Regal::Token::GLenumToString(GL_REPLACEMENT_CODE_ARRAY_SUN));
    EXPECT_EQ(std::string("GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN"),Regal::Token::GLenumToString(GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN));
    EXPECT_EQ(std::string("GL_REPLACEMENT_CODE_SUN"),Regal::Token::GLenumToString(GL_REPLACEMENT_CODE_SUN));
    EXPECT_EQ(std::string("GL_REPLACE_EXT"),Regal::Token::GLenumToString(GL_REPLACE_EXT));
    EXPECT_EQ(std::string("GL_REPLACE_MIDDLE_SUN"),Regal::Token::GLenumToString(GL_REPLACE_MIDDLE_SUN));
    EXPECT_EQ(std::string("GL_REPLACE_OLDEST_SUN"),Regal::Token::GLenumToString(GL_REPLACE_OLDEST_SUN));
    EXPECT_EQ(std::string("GL_REPLACE_VALUE_AMD"),Regal::Token::GLenumToString(GL_REPLACE_VALUE_AMD));
    EXPECT_EQ(std::string("GL_REPLICATE_BORDER"),Regal::Token::GLenumToString(GL_REPLICATE_BORDER));
//    EXPECT_EQ(std::string("GL_REPLICATE_BORDER_HP"),Regal::Token::GLenumToString(GL_REPLICATE_BORDER_HP));
    EXPECT_EQ(std::string("GL_RESAMPLE_AVERAGE_OML"),Regal::Token::GLenumToString(GL_RESAMPLE_AVERAGE_OML));
    EXPECT_EQ(std::string("GL_RESAMPLE_DECIMATE_OML"),Regal::Token::GLenumToString(GL_RESAMPLE_DECIMATE_OML));
    EXPECT_EQ(std::string("GL_RESAMPLE_DECIMATE_SGIX"),Regal::Token::GLenumToString(GL_RESAMPLE_DECIMATE_SGIX));
    EXPECT_EQ(std::string("GL_RESAMPLE_REPLICATE_OML"),Regal::Token::GLenumToString(GL_RESAMPLE_REPLICATE_OML));
    EXPECT_EQ(std::string("GL_RESAMPLE_REPLICATE_SGIX"),Regal::Token::GLenumToString(GL_RESAMPLE_REPLICATE_SGIX));
    EXPECT_EQ(std::string("GL_RESAMPLE_ZERO_FILL_OML"),Regal::Token::GLenumToString(GL_RESAMPLE_ZERO_FILL_OML));
    EXPECT_EQ(std::string("GL_RESAMPLE_ZERO_FILL_SGIX"),Regal::Token::GLenumToString(GL_RESAMPLE_ZERO_FILL_SGIX));
    EXPECT_EQ(std::string("GL_RESCALE_NORMAL"),Regal::Token::GLenumToString(GL_RESCALE_NORMAL));
    EXPECT_EQ(std::string("GL_RESCALE_NORMAL"),Regal::Token::GLenumToString(GL_RESCALE_NORMAL_EXT));
    EXPECT_EQ(std::string("GL_RESET_NOTIFICATION_STRATEGY_ARB"),Regal::Token::GLenumToString(GL_RESET_NOTIFICATION_STRATEGY_ARB));
    EXPECT_EQ(std::string("GL_RESTART_PATH_NV"),Regal::Token::GLenumToString(GL_RESTART_PATH_NV));
    EXPECT_EQ(std::string("GL_RESTART_SUN"),Regal::Token::GLenumToString(GL_RESTART_SUN));
    EXPECT_EQ(std::string("GL_RETAINED_APPLE"),Regal::Token::GLenumToString(GL_RETAINED_APPLE));
    EXPECT_EQ(std::string("GL_RG"),Regal::Token::GLenumToString(GL_RG));
    EXPECT_EQ(std::string("GL_RGBA_FLOAT_MODE_ARB"),Regal::Token::GLenumToString(GL_RGBA_FLOAT_MODE_ARB));
    EXPECT_EQ(std::string("GL_RGBA_INTEGER"),Regal::Token::GLenumToString(GL_RGBA_INTEGER));
    EXPECT_EQ(std::string("GL_RGBA_INTEGER"),Regal::Token::GLenumToString(GL_RGBA_INTEGER_EXT));
    EXPECT_EQ(std::string("GL_RGBA_INTEGER_MODE_EXT"),Regal::Token::GLenumToString(GL_RGBA_INTEGER_MODE_EXT));
    EXPECT_EQ(std::string("GL_RGBA_SIGNED_COMPONENTS_EXT"),Regal::Token::GLenumToString(GL_RGBA_SIGNED_COMPONENTS_EXT));
    EXPECT_EQ(std::string("GL_RGBA_SNORM"),Regal::Token::GLenumToString(GL_RGBA_SNORM));
    EXPECT_EQ(std::string("GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV"),Regal::Token::GLenumToString(GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV));
    EXPECT_EQ(std::string("GL_RGB_INTEGER"),Regal::Token::GLenumToString(GL_RGB_INTEGER));
    EXPECT_EQ(std::string("GL_RGB_INTEGER"),Regal::Token::GLenumToString(GL_RGB_INTEGER_EXT));
    EXPECT_EQ(std::string("GL_RGB_SCALE"),Regal::Token::GLenumToString(GL_RGB_SCALE));
    EXPECT_EQ(std::string("GL_RGB_SCALE"),Regal::Token::GLenumToString(GL_RGB_SCALE_ARB));
    EXPECT_EQ(std::string("GL_RGB_SCALE"),Regal::Token::GLenumToString(GL_RGB_SCALE_EXT));
    EXPECT_EQ(std::string("GL_RGB_SNORM"),Regal::Token::GLenumToString(GL_RGB_SNORM));
    EXPECT_EQ(std::string("GL_RG_INTEGER"),Regal::Token::GLenumToString(GL_RG_INTEGER));
    EXPECT_EQ(std::string("GL_RG_SNORM"),Regal::Token::GLenumToString(GL_RG_SNORM));
    EXPECT_EQ(std::string("GL_ROUND_NV"),Regal::Token::GLenumToString(GL_ROUND_NV));
    EXPECT_EQ(std::string("GL_SAMPLER_BINDING"),Regal::Token::GLenumToString(GL_SAMPLER_BINDING));
    EXPECT_EQ(std::string("GL_SAMPLER_BUFFER"),Regal::Token::GLenumToString(GL_SAMPLER_BUFFER));
    EXPECT_EQ(std::string("GL_SAMPLER_BUFFER_AMD"),Regal::Token::GLenumToString(GL_SAMPLER_BUFFER_AMD));
    EXPECT_EQ(std::string("GL_SAMPLER_BUFFER"),Regal::Token::GLenumToString(GL_SAMPLER_BUFFER_EXT));
    EXPECT_EQ(std::string("GL_SAMPLER_CUBE"),Regal::Token::GLenumToString(GL_SAMPLER_CUBE));
    EXPECT_EQ(std::string("GL_SAMPLER_CUBE"),Regal::Token::GLenumToString(GL_SAMPLER_CUBE_ARB));
    EXPECT_EQ(std::string("GL_SAMPLER_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_SAMPLER_CUBE_MAP_ARRAY));
    EXPECT_EQ(std::string("GL_SAMPLER_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_SAMPLER_CUBE_MAP_ARRAY_ARB));
    EXPECT_EQ(std::string("GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW"),Regal::Token::GLenumToString(GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW));
    EXPECT_EQ(std::string("GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW"),Regal::Token::GLenumToString(GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB));
    EXPECT_EQ(std::string("GL_SAMPLER_CUBE_SHADOW"),Regal::Token::GLenumToString(GL_SAMPLER_CUBE_SHADOW));
    EXPECT_EQ(std::string("GL_SAMPLER_CUBE_SHADOW"),Regal::Token::GLenumToString(GL_SAMPLER_CUBE_SHADOW_EXT));
    EXPECT_EQ(std::string("GL_SAMPLER_OBJECT_AMD"),Regal::Token::GLenumToString(GL_SAMPLER_OBJECT_AMD));
    EXPECT_EQ(std::string("GL_SAMPLER_RENDERBUFFER_NV"),Regal::Token::GLenumToString(GL_SAMPLER_RENDERBUFFER_NV));
    EXPECT_EQ(std::string("GL_SAMPLES"),Regal::Token::GLenumToString(GL_SAMPLES));
    EXPECT_EQ(std::string("GL_SAMPLES"),Regal::Token::GLenumToString(GL_SAMPLES_ARB));
    EXPECT_EQ(std::string("GL_SAMPLES"),Regal::Token::GLenumToString(GL_SAMPLES_EXT));
    EXPECT_EQ(std::string("GL_SAMPLES_PASSED"),Regal::Token::GLenumToString(GL_SAMPLES_PASSED));
    EXPECT_EQ(std::string("GL_SAMPLES_PASSED"),Regal::Token::GLenumToString(GL_SAMPLES_PASSED_ARB));
    EXPECT_EQ(std::string("GL_SAMPLES"),Regal::Token::GLenumToString(GL_SAMPLES_SGIS));
    EXPECT_EQ(std::string("GL_SAMPLE_ALPHA_TO_COVERAGE"),Regal::Token::GLenumToString(GL_SAMPLE_ALPHA_TO_COVERAGE));
    EXPECT_EQ(std::string("GL_SAMPLE_ALPHA_TO_COVERAGE"),Regal::Token::GLenumToString(GL_SAMPLE_ALPHA_TO_COVERAGE_ARB));
    EXPECT_EQ(std::string("GL_SAMPLE_ALPHA_TO_MASK_EXT"),Regal::Token::GLenumToString(GL_SAMPLE_ALPHA_TO_MASK_EXT));
    EXPECT_EQ(std::string("GL_SAMPLE_ALPHA_TO_MASK_SGIS"),Regal::Token::GLenumToString(GL_SAMPLE_ALPHA_TO_MASK_SGIS));
    EXPECT_EQ(std::string("GL_SAMPLE_ALPHA_TO_ONE"),Regal::Token::GLenumToString(GL_SAMPLE_ALPHA_TO_ONE));
    EXPECT_EQ(std::string("GL_SAMPLE_ALPHA_TO_ONE"),Regal::Token::GLenumToString(GL_SAMPLE_ALPHA_TO_ONE_ARB));
    EXPECT_EQ(std::string("GL_SAMPLE_ALPHA_TO_ONE"),Regal::Token::GLenumToString(GL_SAMPLE_ALPHA_TO_ONE_EXT));
    EXPECT_EQ(std::string("GL_SAMPLE_ALPHA_TO_ONE"),Regal::Token::GLenumToString(GL_SAMPLE_ALPHA_TO_ONE_SGIS));
    EXPECT_EQ(std::string("GL_SAMPLE_BUFFERS"),Regal::Token::GLenumToString(GL_SAMPLE_BUFFERS));
    EXPECT_EQ(std::string("GL_SAMPLE_BUFFERS"),Regal::Token::GLenumToString(GL_SAMPLE_BUFFERS_ARB));
    EXPECT_EQ(std::string("GL_SAMPLE_BUFFERS"),Regal::Token::GLenumToString(GL_SAMPLE_BUFFERS_EXT));
    EXPECT_EQ(std::string("GL_SAMPLE_BUFFERS"),Regal::Token::GLenumToString(GL_SAMPLE_BUFFERS_SGIS));
    EXPECT_EQ(std::string("GL_SAMPLE_COVERAGE"),Regal::Token::GLenumToString(GL_SAMPLE_COVERAGE));
    EXPECT_EQ(std::string("GL_SAMPLE_COVERAGE"),Regal::Token::GLenumToString(GL_SAMPLE_COVERAGE_ARB));
    EXPECT_EQ(std::string("GL_SAMPLE_COVERAGE_INVERT"),Regal::Token::GLenumToString(GL_SAMPLE_COVERAGE_INVERT));
    EXPECT_EQ(std::string("GL_SAMPLE_COVERAGE_INVERT"),Regal::Token::GLenumToString(GL_SAMPLE_COVERAGE_INVERT_ARB));
    EXPECT_EQ(std::string("GL_SAMPLE_COVERAGE_VALUE"),Regal::Token::GLenumToString(GL_SAMPLE_COVERAGE_VALUE));
    EXPECT_EQ(std::string("GL_SAMPLE_COVERAGE_VALUE"),Regal::Token::GLenumToString(GL_SAMPLE_COVERAGE_VALUE_ARB));
    EXPECT_EQ(std::string("GL_SAMPLE_MASK"),Regal::Token::GLenumToString(GL_SAMPLE_MASK));
    EXPECT_EQ(std::string("GL_SAMPLE_MASK"),Regal::Token::GLenumToString(GL_SAMPLE_MASK_EXT));
    EXPECT_EQ(std::string("GL_SAMPLE_MASK_INVERT_EXT"),Regal::Token::GLenumToString(GL_SAMPLE_MASK_INVERT_EXT));
    EXPECT_EQ(std::string("GL_SAMPLE_MASK_INVERT_SGIS"),Regal::Token::GLenumToString(GL_SAMPLE_MASK_INVERT_SGIS));
    EXPECT_EQ(std::string("GL_SAMPLE_MASK_NV"),Regal::Token::GLenumToString(GL_SAMPLE_MASK_NV));
    EXPECT_EQ(std::string("GL_SAMPLE_MASK"),Regal::Token::GLenumToString(GL_SAMPLE_MASK_SGIS));
    EXPECT_EQ(std::string("GL_SAMPLE_MASK_VALUE"),Regal::Token::GLenumToString(GL_SAMPLE_MASK_VALUE));
    EXPECT_EQ(std::string("GL_SAMPLE_MASK_VALUE"),Regal::Token::GLenumToString(GL_SAMPLE_MASK_VALUE_EXT));
    EXPECT_EQ(std::string("GL_SAMPLE_MASK_VALUE"),Regal::Token::GLenumToString(GL_SAMPLE_MASK_VALUE_NV));
    EXPECT_EQ(std::string("GL_SAMPLE_MASK_VALUE"),Regal::Token::GLenumToString(GL_SAMPLE_MASK_VALUE_SGIS));
    EXPECT_EQ(std::string("GL_SAMPLE_PATTERN_EXT"),Regal::Token::GLenumToString(GL_SAMPLE_PATTERN_EXT));
    EXPECT_EQ(std::string("GL_SAMPLE_PATTERN_SGIS"),Regal::Token::GLenumToString(GL_SAMPLE_PATTERN_SGIS));
    EXPECT_EQ(std::string("GL_SAMPLE_POSITION"),Regal::Token::GLenumToString(GL_SAMPLE_POSITION));
    EXPECT_EQ(std::string("GL_SAMPLE_POSITION_NV"),Regal::Token::GLenumToString(GL_SAMPLE_POSITION_NV));
    EXPECT_EQ(std::string("GL_SAMPLE_SHADING"),Regal::Token::GLenumToString(GL_SAMPLE_SHADING));
    EXPECT_EQ(std::string("GL_SAMPLE_SHADING"),Regal::Token::GLenumToString(GL_SAMPLE_SHADING_ARB));
    EXPECT_EQ(std::string("GL_SCALAR_EXT"),Regal::Token::GLenumToString(GL_SCALAR_EXT));
//    EXPECT_EQ(std::string("GL_SCALEBIAS_HINT_SGIX"),Regal::Token::GLenumToString(GL_SCALEBIAS_HINT_SGIX));
    EXPECT_EQ(std::string("GL_SCALED_RESOLVE_FASTEST_EXT"),Regal::Token::GLenumToString(GL_SCALED_RESOLVE_FASTEST_EXT));
    EXPECT_EQ(std::string("GL_SCALED_RESOLVE_NICEST_EXT"),Regal::Token::GLenumToString(GL_SCALED_RESOLVE_NICEST_EXT));
    EXPECT_EQ(std::string("GL_SCALE_BY_FOUR_NV"),Regal::Token::GLenumToString(GL_SCALE_BY_FOUR_NV));
    EXPECT_EQ(std::string("GL_SCALE_BY_ONE_HALF_NV"),Regal::Token::GLenumToString(GL_SCALE_BY_ONE_HALF_NV));
    EXPECT_EQ(std::string("GL_SCALE_BY_TWO_NV"),Regal::Token::GLenumToString(GL_SCALE_BY_TWO_NV));
    EXPECT_EQ(std::string("GL_SCREEN_COORDINATES_REND"),Regal::Token::GLenumToString(GL_SCREEN_COORDINATES_REND));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_ARRAY"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_ARRAY));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_ARRAY_EXT"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_ARRAY_EXT));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_ARRAY_LENGTH_NV"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_ARRAY_LENGTH_NV));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_ARRAY_POINTER"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_ARRAY_POINTER));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_ARRAY_POINTER_EXT"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_ARRAY_POINTER_EXT));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_ARRAY_SIZE"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_ARRAY_SIZE));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_ARRAY_SIZE_EXT"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_ARRAY_SIZE_EXT));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_ARRAY_STRIDE"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_ARRAY_STRIDE));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_ARRAY_TYPE"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_ARRAY_TYPE));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_ARRAY_TYPE_EXT"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_ARRAY_TYPE_EXT));
    EXPECT_EQ(std::string("GL_SECONDARY_COLOR_NV"),Regal::Token::GLenumToString(GL_SECONDARY_COLOR_NV));
    EXPECT_EQ(std::string("GL_SECONDARY_INTERPOLATOR_ATI"),Regal::Token::GLenumToString(GL_SECONDARY_INTERPOLATOR_ATI));
    EXPECT_EQ(std::string("GL_SEPARATE_ATTRIBS"),Regal::Token::GLenumToString(GL_SEPARATE_ATTRIBS));
    EXPECT_EQ(std::string("GL_SEPARATE_ATTRIBS"),Regal::Token::GLenumToString(GL_SEPARATE_ATTRIBS_EXT));
    EXPECT_EQ(std::string("GL_SEPARATE_ATTRIBS_NV"),Regal::Token::GLenumToString(GL_SEPARATE_ATTRIBS_NV));
    EXPECT_EQ(std::string("GL_SEPARATE_SPECULAR_COLOR"),Regal::Token::GLenumToString(GL_SEPARATE_SPECULAR_COLOR));
    EXPECT_EQ(std::string("GL_SEPARATE_SPECULAR_COLOR"),Regal::Token::GLenumToString(GL_SEPARATE_SPECULAR_COLOR_EXT));
    EXPECT_EQ(std::string("GL_SET_AMD"),Regal::Token::GLenumToString(GL_SET_AMD));
    EXPECT_EQ(std::string("GL_SHADER_COMPILER"),Regal::Token::GLenumToString(GL_SHADER_COMPILER));
    EXPECT_EQ(std::string("GL_SHADER_CONSISTENT_NV"),Regal::Token::GLenumToString(GL_SHADER_CONSISTENT_NV));
    EXPECT_EQ(std::string("GL_SHADER_INCLUDE_ARB"),Regal::Token::GLenumToString(GL_SHADER_INCLUDE_ARB));
    EXPECT_EQ(std::string("GL_SHADER_OBJECT_ARB"),Regal::Token::GLenumToString(GL_SHADER_OBJECT_ARB));
    EXPECT_EQ(std::string("GL_SHADER_OPERATION_NV"),Regal::Token::GLenumToString(GL_SHADER_OPERATION_NV));
    EXPECT_EQ(std::string("GL_SHADER_SOURCE_LENGTH"),Regal::Token::GLenumToString(GL_SHADER_SOURCE_LENGTH));
    EXPECT_EQ(std::string("GL_SHADER_TYPE"),Regal::Token::GLenumToString(GL_SHADER_TYPE));
    EXPECT_EQ(std::string("GL_SHADING_LANGUAGE_VERSION"),Regal::Token::GLenumToString(GL_SHADING_LANGUAGE_VERSION));
    EXPECT_EQ(std::string("GL_SHADING_LANGUAGE_VERSION"),Regal::Token::GLenumToString(GL_SHADING_LANGUAGE_VERSION_ARB));
    EXPECT_EQ(std::string("GL_SHADOW_AMBIENT_SGIX"),Regal::Token::GLenumToString(GL_SHADOW_AMBIENT_SGIX));
    EXPECT_EQ(std::string("GL_SHADOW_ATTENUATION_EXT"),Regal::Token::GLenumToString(GL_SHADOW_ATTENUATION_EXT));
    EXPECT_EQ(std::string("GL_SHARED_TEXTURE_PALETTE_EXT"),Regal::Token::GLenumToString(GL_SHARED_TEXTURE_PALETTE_EXT));
//    EXPECT_EQ(std::string("GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS"),Regal::Token::GLenumToString(GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS));
    EXPECT_EQ(std::string("GL_SIGNALED"),Regal::Token::GLenumToString(GL_SIGNALED));
    EXPECT_EQ(std::string("GL_SIGNED_ALPHA_NV"),Regal::Token::GLenumToString(GL_SIGNED_ALPHA_NV));
    EXPECT_EQ(std::string("GL_SIGNED_HILO_NV"),Regal::Token::GLenumToString(GL_SIGNED_HILO_NV));
    EXPECT_EQ(std::string("GL_SIGNED_IDENTITY_NV"),Regal::Token::GLenumToString(GL_SIGNED_IDENTITY_NV));
    EXPECT_EQ(std::string("GL_SIGNED_INTENSITY_NV"),Regal::Token::GLenumToString(GL_SIGNED_INTENSITY_NV));
    EXPECT_EQ(std::string("GL_SIGNED_LUMINANCE_ALPHA_NV"),Regal::Token::GLenumToString(GL_SIGNED_LUMINANCE_ALPHA_NV));
    EXPECT_EQ(std::string("GL_SIGNED_LUMINANCE_NV"),Regal::Token::GLenumToString(GL_SIGNED_LUMINANCE_NV));
    EXPECT_EQ(std::string("GL_SIGNED_NEGATE_NV"),Regal::Token::GLenumToString(GL_SIGNED_NEGATE_NV));
    EXPECT_EQ(std::string("GL_SIGNED_NORMALIZED"),Regal::Token::GLenumToString(GL_SIGNED_NORMALIZED));
    EXPECT_EQ(std::string("GL_SIGNED_RGBA_NV"),Regal::Token::GLenumToString(GL_SIGNED_RGBA_NV));
    EXPECT_EQ(std::string("GL_SIGNED_RGB_NV"),Regal::Token::GLenumToString(GL_SIGNED_RGB_NV));
    EXPECT_EQ(std::string("GL_SIGNED_RGB_UNSIGNED_ALPHA_NV"),Regal::Token::GLenumToString(GL_SIGNED_RGB_UNSIGNED_ALPHA_NV));
    EXPECT_EQ(std::string("GL_SINGLE_COLOR"),Regal::Token::GLenumToString(GL_SINGLE_COLOR));
    EXPECT_EQ(std::string("GL_SINGLE_COLOR"),Regal::Token::GLenumToString(GL_SINGLE_COLOR_EXT));
    EXPECT_EQ(std::string("GL_SKIP_DECODE_EXT"),Regal::Token::GLenumToString(GL_SKIP_DECODE_EXT));
    EXPECT_EQ(std::string("GL_SKIP_MISSING_GLYPH_NV"),Regal::Token::GLenumToString(GL_SKIP_MISSING_GLYPH_NV));
    EXPECT_EQ(std::string("GL_SLICE_ACCUM_SUN"),Regal::Token::GLenumToString(GL_SLICE_ACCUM_SUN));
    EXPECT_EQ(std::string("GL_SLUMINANCE"),Regal::Token::GLenumToString(GL_SLUMINANCE));
    EXPECT_EQ(std::string("GL_SLUMINANCE_ALPHA"),Regal::Token::GLenumToString(GL_SLUMINANCE_ALPHA));
    EXPECT_EQ(std::string("GL_SLUMINANCE_ALPHA"),Regal::Token::GLenumToString(GL_SLUMINANCE_ALPHA_EXT));
    EXPECT_EQ(std::string("GL_SLUMINANCE"),Regal::Token::GLenumToString(GL_SLUMINANCE_EXT));
    EXPECT_EQ(std::string("GL_SMALL_CCW_ARC_TO_NV"),Regal::Token::GLenumToString(GL_SMALL_CCW_ARC_TO_NV));
    EXPECT_EQ(std::string("GL_SMALL_CW_ARC_TO_NV"),Regal::Token::GLenumToString(GL_SMALL_CW_ARC_TO_NV));
    EXPECT_EQ(std::string("GL_SMOOTH_CUBIC_CURVE_TO_NV"),Regal::Token::GLenumToString(GL_SMOOTH_CUBIC_CURVE_TO_NV));
    EXPECT_EQ(std::string("GL_SMOOTH_LINE_WIDTH_GRANULARITY"),Regal::Token::GLenumToString(GL_SMOOTH_LINE_WIDTH_GRANULARITY));
    EXPECT_EQ(std::string("GL_SMOOTH_LINE_WIDTH_RANGE"),Regal::Token::GLenumToString(GL_SMOOTH_LINE_WIDTH_RANGE));
    EXPECT_EQ(std::string("GL_SMOOTH_POINT_SIZE_GRANULARITY"),Regal::Token::GLenumToString(GL_SMOOTH_POINT_SIZE_GRANULARITY));
    EXPECT_EQ(std::string("GL_SMOOTH_POINT_SIZE_RANGE"),Regal::Token::GLenumToString(GL_SMOOTH_POINT_SIZE_RANGE));
    EXPECT_EQ(std::string("GL_SMOOTH_QUADRATIC_CURVE_TO_NV"),Regal::Token::GLenumToString(GL_SMOOTH_QUADRATIC_CURVE_TO_NV));
//    EXPECT_EQ(std::string("GL_SPRITE_AXIAL_SGIX"),Regal::Token::GLenumToString(GL_SPRITE_AXIAL_SGIX));
//    EXPECT_EQ(std::string("GL_SPRITE_AXIS_SGIX"),Regal::Token::GLenumToString(GL_SPRITE_AXIS_SGIX));
//    EXPECT_EQ(std::string("GL_SPRITE_EYE_ALIGNED_SGIX"),Regal::Token::GLenumToString(GL_SPRITE_EYE_ALIGNED_SGIX));
//    EXPECT_EQ(std::string("GL_SPRITE_MODE_SGIX"),Regal::Token::GLenumToString(GL_SPRITE_MODE_SGIX));
//    EXPECT_EQ(std::string("GL_SPRITE_OBJECT_ALIGNED_SGIX"),Regal::Token::GLenumToString(GL_SPRITE_OBJECT_ALIGNED_SGIX));
//    EXPECT_EQ(std::string("GL_SPRITE_SGIX"),Regal::Token::GLenumToString(GL_SPRITE_SGIX));
//    EXPECT_EQ(std::string("GL_SPRITE_TRANSLATION_SGIX"),Regal::Token::GLenumToString(GL_SPRITE_TRANSLATION_SGIX));
    EXPECT_EQ(std::string("GL_SQUARE_NV"),Regal::Token::GLenumToString(GL_SQUARE_NV));
    EXPECT_EQ(std::string("GL_SRGB"),Regal::Token::GLenumToString(GL_SRGB));
    EXPECT_EQ(std::string("GL_SRGB_ALPHA"),Regal::Token::GLenumToString(GL_SRGB_ALPHA));
    EXPECT_EQ(std::string("GL_SRGB_ALPHA"),Regal::Token::GLenumToString(GL_SRGB_ALPHA_EXT));
    EXPECT_EQ(std::string("GL_SRGB"),Regal::Token::GLenumToString(GL_SRGB_EXT));
    EXPECT_EQ(std::string("GL_STANDARD_FONT_NAME_NV"),Regal::Token::GLenumToString(GL_STANDARD_FONT_NAME_NV));
    EXPECT_EQ(std::string("GL_STATIC_ATI"),Regal::Token::GLenumToString(GL_STATIC_ATI));
    EXPECT_EQ(std::string("GL_STATIC_COPY"),Regal::Token::GLenumToString(GL_STATIC_COPY));
    EXPECT_EQ(std::string("GL_STATIC_COPY"),Regal::Token::GLenumToString(GL_STATIC_COPY_ARB));
    EXPECT_EQ(std::string("GL_STATIC_DRAW"),Regal::Token::GLenumToString(GL_STATIC_DRAW));
    EXPECT_EQ(std::string("GL_STATIC_DRAW"),Regal::Token::GLenumToString(GL_STATIC_DRAW_ARB));
    EXPECT_EQ(std::string("GL_STATIC_READ"),Regal::Token::GLenumToString(GL_STATIC_READ));
    EXPECT_EQ(std::string("GL_STATIC_READ"),Regal::Token::GLenumToString(GL_STATIC_READ_ARB));
    EXPECT_EQ(std::string("GL_STENCIL_ATTACHMENT"),Regal::Token::GLenumToString(GL_STENCIL_ATTACHMENT));
    EXPECT_EQ(std::string("GL_STENCIL_ATTACHMENT"),Regal::Token::GLenumToString(GL_STENCIL_ATTACHMENT_EXT));
    EXPECT_EQ(std::string("GL_STENCIL_BACK_FAIL"),Regal::Token::GLenumToString(GL_STENCIL_BACK_FAIL));
    EXPECT_EQ(std::string("GL_STENCIL_BACK_FAIL_ATI"),Regal::Token::GLenumToString(GL_STENCIL_BACK_FAIL_ATI));
    EXPECT_EQ(std::string("GL_STENCIL_BACK_FUNC"),Regal::Token::GLenumToString(GL_STENCIL_BACK_FUNC));
    EXPECT_EQ(std::string("GL_STENCIL_BACK_FUNC_ATI"),Regal::Token::GLenumToString(GL_STENCIL_BACK_FUNC_ATI));
    EXPECT_EQ(std::string("GL_STENCIL_BACK_OP_VALUE_AMD"),Regal::Token::GLenumToString(GL_STENCIL_BACK_OP_VALUE_AMD));
    EXPECT_EQ(std::string("GL_STENCIL_BACK_PASS_DEPTH_FAIL"),Regal::Token::GLenumToString(GL_STENCIL_BACK_PASS_DEPTH_FAIL));
    EXPECT_EQ(std::string("GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI"),Regal::Token::GLenumToString(GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI));
    EXPECT_EQ(std::string("GL_STENCIL_BACK_PASS_DEPTH_PASS"),Regal::Token::GLenumToString(GL_STENCIL_BACK_PASS_DEPTH_PASS));
    EXPECT_EQ(std::string("GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI"),Regal::Token::GLenumToString(GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI));
    EXPECT_EQ(std::string("GL_STENCIL_BACK_REF"),Regal::Token::GLenumToString(GL_STENCIL_BACK_REF));
    EXPECT_EQ(std::string("GL_STENCIL_BACK_VALUE_MASK"),Regal::Token::GLenumToString(GL_STENCIL_BACK_VALUE_MASK));
    EXPECT_EQ(std::string("GL_STENCIL_BACK_WRITEMASK"),Regal::Token::GLenumToString(GL_STENCIL_BACK_WRITEMASK));
    EXPECT_EQ(std::string("GL_STENCIL_CLEAR_TAG_VALUE_EXT"),Regal::Token::GLenumToString(GL_STENCIL_CLEAR_TAG_VALUE_EXT));
    EXPECT_EQ(std::string("GL_STENCIL_OP_VALUE_AMD"),Regal::Token::GLenumToString(GL_STENCIL_OP_VALUE_AMD));
    EXPECT_EQ(std::string("GL_STENCIL_TEST_TWO_SIDE_EXT"),Regal::Token::GLenumToString(GL_STENCIL_TEST_TWO_SIDE_EXT));
    EXPECT_EQ(std::string("GL_STORAGE_CACHED_APPLE"),Regal::Token::GLenumToString(GL_STORAGE_CACHED_APPLE));
    EXPECT_EQ(std::string("GL_STORAGE_CLIENT_APPLE"),Regal::Token::GLenumToString(GL_STORAGE_CLIENT_APPLE));
    EXPECT_EQ(std::string("GL_STORAGE_PRIVATE_APPLE"),Regal::Token::GLenumToString(GL_STORAGE_PRIVATE_APPLE));
    EXPECT_EQ(std::string("GL_STORAGE_SHARED_APPLE"),Regal::Token::GLenumToString(GL_STORAGE_SHARED_APPLE));
    EXPECT_EQ(std::string("GL_STREAM_COPY"),Regal::Token::GLenumToString(GL_STREAM_COPY));
    EXPECT_EQ(std::string("GL_STREAM_COPY"),Regal::Token::GLenumToString(GL_STREAM_COPY_ARB));
    EXPECT_EQ(std::string("GL_STREAM_DRAW"),Regal::Token::GLenumToString(GL_STREAM_DRAW));
    EXPECT_EQ(std::string("GL_STREAM_DRAW"),Regal::Token::GLenumToString(GL_STREAM_DRAW_ARB));
    EXPECT_EQ(std::string("GL_STREAM_READ"),Regal::Token::GLenumToString(GL_STREAM_READ));
    EXPECT_EQ(std::string("GL_STREAM_READ"),Regal::Token::GLenumToString(GL_STREAM_READ_ARB));
    EXPECT_EQ(std::string("GL_STRICT_DEPTHFUNC_HINT_PGI"),Regal::Token::GLenumToString(GL_STRICT_DEPTHFUNC_HINT_PGI));
    EXPECT_EQ(std::string("GL_STRICT_LIGHTING_HINT_PGI"),Regal::Token::GLenumToString(GL_STRICT_LIGHTING_HINT_PGI));
    EXPECT_EQ(std::string("GL_STRICT_SCISSOR_HINT_PGI"),Regal::Token::GLenumToString(GL_STRICT_SCISSOR_HINT_PGI));
    EXPECT_EQ(std::string("GL_SUBSAMPLE_DISTANCE_AMD"),Regal::Token::GLenumToString(GL_SUBSAMPLE_DISTANCE_AMD));
    EXPECT_EQ(std::string("GL_SUBTRACT"),Regal::Token::GLenumToString(GL_SUBTRACT));
    EXPECT_EQ(std::string("GL_SUBTRACT"),Regal::Token::GLenumToString(GL_SUBTRACT_ARB));
    EXPECT_EQ(std::string("GL_SUB_ATI"),Regal::Token::GLenumToString(GL_SUB_ATI));
    EXPECT_EQ(std::string("GL_SUCCESS_NV"),Regal::Token::GLenumToString(GL_SUCCESS_NV));
    EXPECT_EQ(std::string("GL_SURFACE_MAPPED_NV"),Regal::Token::GLenumToString(GL_SURFACE_MAPPED_NV));
    EXPECT_EQ(std::string("GL_SURFACE_REGISTERED_NV"),Regal::Token::GLenumToString(GL_SURFACE_REGISTERED_NV));
    EXPECT_EQ(std::string("GL_SURFACE_STATE_NV"),Regal::Token::GLenumToString(GL_SURFACE_STATE_NV));
    EXPECT_EQ(std::string("GL_SWIZZLE_STQ_ATI"),Regal::Token::GLenumToString(GL_SWIZZLE_STQ_ATI));
    EXPECT_EQ(std::string("GL_SWIZZLE_STQ_DQ_ATI"),Regal::Token::GLenumToString(GL_SWIZZLE_STQ_DQ_ATI));
    EXPECT_EQ(std::string("GL_SWIZZLE_STRQ_ATI"),Regal::Token::GLenumToString(GL_SWIZZLE_STRQ_ATI));
    EXPECT_EQ(std::string("GL_SWIZZLE_STRQ_DQ_ATI"),Regal::Token::GLenumToString(GL_SWIZZLE_STRQ_DQ_ATI));
    EXPECT_EQ(std::string("GL_SWIZZLE_STR_ATI"),Regal::Token::GLenumToString(GL_SWIZZLE_STR_ATI));
    EXPECT_EQ(std::string("GL_SWIZZLE_STR_DR_ATI"),Regal::Token::GLenumToString(GL_SWIZZLE_STR_DR_ATI));
    EXPECT_EQ(std::string("GL_SYNC_CL_EVENT_ARB"),Regal::Token::GLenumToString(GL_SYNC_CL_EVENT_ARB));
    EXPECT_EQ(std::string("GL_SYNC_CL_EVENT_COMPLETE_ARB"),Regal::Token::GLenumToString(GL_SYNC_CL_EVENT_COMPLETE_ARB));
    EXPECT_EQ(std::string("GL_SYNC_CONDITION"),Regal::Token::GLenumToString(GL_SYNC_CONDITION));
    EXPECT_EQ(std::string("GL_SYNC_FENCE"),Regal::Token::GLenumToString(GL_SYNC_FENCE));
    EXPECT_EQ(std::string("GL_SYNC_FLAGS"),Regal::Token::GLenumToString(GL_SYNC_FLAGS));
    EXPECT_EQ(std::string("GL_SYNC_GPU_COMMANDS_COMPLETE"),Regal::Token::GLenumToString(GL_SYNC_GPU_COMMANDS_COMPLETE));
    EXPECT_EQ(std::string("GL_SYNC_STATUS"),Regal::Token::GLenumToString(GL_SYNC_STATUS));
    EXPECT_EQ(std::string("GL_SYSTEM_FONT_NAME_NV"),Regal::Token::GLenumToString(GL_SYSTEM_FONT_NAME_NV));
    EXPECT_EQ(std::string("GL_TABLE_TOO_LARGE"),Regal::Token::GLenumToString(GL_TABLE_TOO_LARGE));
//    EXPECT_EQ(std::string("GL_TABLE_TOO_LARGE_EXT"),Regal::Token::GLenumToString(GL_TABLE_TOO_LARGE_EXT));
    EXPECT_EQ(std::string("GL_TANGENT_ARRAY_EXT"),Regal::Token::GLenumToString(GL_TANGENT_ARRAY_EXT));
    EXPECT_EQ(std::string("GL_TANGENT_ARRAY_POINTER_EXT"),Regal::Token::GLenumToString(GL_TANGENT_ARRAY_POINTER_EXT));
    EXPECT_EQ(std::string("GL_TANGENT_ARRAY_STRIDE_EXT"),Regal::Token::GLenumToString(GL_TANGENT_ARRAY_STRIDE_EXT));
    EXPECT_EQ(std::string("GL_TANGENT_ARRAY_TYPE_EXT"),Regal::Token::GLenumToString(GL_TANGENT_ARRAY_TYPE_EXT));
    EXPECT_EQ(std::string("GL_TESSELLATION_FACTOR_AMD"),Regal::Token::GLenumToString(GL_TESSELLATION_FACTOR_AMD));
    EXPECT_EQ(std::string("GL_TESSELLATION_MODE_AMD"),Regal::Token::GLenumToString(GL_TESSELLATION_MODE_AMD));
    EXPECT_EQ(std::string("GL_TESS_CONTROL_OUTPUT_VERTICES"),Regal::Token::GLenumToString(GL_TESS_CONTROL_OUTPUT_VERTICES));
    EXPECT_EQ(std::string("GL_TESS_CONTROL_PROGRAM_NV"),Regal::Token::GLenumToString(GL_TESS_CONTROL_PROGRAM_NV));
    EXPECT_EQ(std::string("GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV"),Regal::Token::GLenumToString(GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV));
    EXPECT_EQ(std::string("GL_TESS_CONTROL_SHADER"),Regal::Token::GLenumToString(GL_TESS_CONTROL_SHADER));
    EXPECT_EQ(std::string("GL_TESS_EVALUATION_PROGRAM_NV"),Regal::Token::GLenumToString(GL_TESS_EVALUATION_PROGRAM_NV));
    EXPECT_EQ(std::string("GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV"),Regal::Token::GLenumToString(GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV));
    EXPECT_EQ(std::string("GL_TESS_EVALUATION_SHADER"),Regal::Token::GLenumToString(GL_TESS_EVALUATION_SHADER));
    EXPECT_EQ(std::string("GL_TESS_GEN_MODE"),Regal::Token::GLenumToString(GL_TESS_GEN_MODE));
    EXPECT_EQ(std::string("GL_TESS_GEN_POINT_MODE"),Regal::Token::GLenumToString(GL_TESS_GEN_POINT_MODE));
    EXPECT_EQ(std::string("GL_TESS_GEN_SPACING"),Regal::Token::GLenumToString(GL_TESS_GEN_SPACING));
    EXPECT_EQ(std::string("GL_TESS_GEN_VERTEX_ORDER"),Regal::Token::GLenumToString(GL_TESS_GEN_VERTEX_ORDER));
    EXPECT_EQ(std::string("GL_TEXTURE_ALPHA_SIZE_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_ALPHA_SIZE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_ALPHA_TYPE"),Regal::Token::GLenumToString(GL_TEXTURE_ALPHA_TYPE));
    EXPECT_EQ(std::string("GL_TEXTURE_ALPHA_TYPE"),Regal::Token::GLenumToString(GL_TEXTURE_ALPHA_TYPE_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_APPLICATION_MODE_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_APPLICATION_MODE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_BASE_LEVEL"),Regal::Token::GLenumToString(GL_TEXTURE_BASE_LEVEL));
    EXPECT_EQ(std::string("GL_TEXTURE_BASE_LEVEL"),Regal::Token::GLenumToString(GL_TEXTURE_BASE_LEVEL_SGIS));
    EXPECT_EQ(std::string("GL_TEXTURE_BINDING_BUFFER"),Regal::Token::GLenumToString(GL_TEXTURE_BINDING_BUFFER));
    EXPECT_EQ(std::string("GL_TEXTURE_BINDING_BUFFER"),Regal::Token::GLenumToString(GL_TEXTURE_BINDING_BUFFER_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_BINDING_BUFFER"),Regal::Token::GLenumToString(GL_TEXTURE_BINDING_BUFFER_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_BINDING_CUBE_MAP"),Regal::Token::GLenumToString(GL_TEXTURE_BINDING_CUBE_MAP));
    EXPECT_EQ(std::string("GL_TEXTURE_BINDING_CUBE_MAP"),Regal::Token::GLenumToString(GL_TEXTURE_BINDING_CUBE_MAP_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_BINDING_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_TEXTURE_BINDING_CUBE_MAP_ARRAY));
    EXPECT_EQ(std::string("GL_TEXTURE_BINDING_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_BINDING_CUBE_MAP"),Regal::Token::GLenumToString(GL_TEXTURE_BINDING_CUBE_MAP_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_BINDING_RECTANGLE"),Regal::Token::GLenumToString(GL_TEXTURE_BINDING_RECTANGLE));
    EXPECT_EQ(std::string("GL_TEXTURE_BINDING_RECTANGLE"),Regal::Token::GLenumToString(GL_TEXTURE_BINDING_RECTANGLE_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_BINDING_RECTANGLE_NV"),Regal::Token::GLenumToString(GL_TEXTURE_BINDING_RECTANGLE_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_BINDING_RENDERBUFFER_NV"),Regal::Token::GLenumToString(GL_TEXTURE_BINDING_RENDERBUFFER_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_BLUE_SIZE_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_BLUE_SIZE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_BLUE_TYPE"),Regal::Token::GLenumToString(GL_TEXTURE_BLUE_TYPE));
    EXPECT_EQ(std::string("GL_TEXTURE_BLUE_TYPE"),Regal::Token::GLenumToString(GL_TEXTURE_BLUE_TYPE_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_BORDER_VALUES_NV"),Regal::Token::GLenumToString(GL_TEXTURE_BORDER_VALUES_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_BUFFER"),Regal::Token::GLenumToString(GL_TEXTURE_BUFFER));
    EXPECT_EQ(std::string("GL_TEXTURE_BUFFER"),Regal::Token::GLenumToString(GL_TEXTURE_BUFFER_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_BUFFER_DATA_STORE_BINDING"),Regal::Token::GLenumToString(GL_TEXTURE_BUFFER_DATA_STORE_BINDING));
    EXPECT_EQ(std::string("GL_TEXTURE_BUFFER_DATA_STORE_BINDING"),Regal::Token::GLenumToString(GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_BUFFER_DATA_STORE_BINDING"),Regal::Token::GLenumToString(GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_BUFFER"),Regal::Token::GLenumToString(GL_TEXTURE_BUFFER_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_BUFFER_FORMAT"),Regal::Token::GLenumToString(GL_TEXTURE_BUFFER_FORMAT));
    EXPECT_EQ(std::string("GL_TEXTURE_BUFFER_FORMAT"),Regal::Token::GLenumToString(GL_TEXTURE_BUFFER_FORMAT_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_BUFFER_FORMAT"),Regal::Token::GLenumToString(GL_TEXTURE_BUFFER_FORMAT_EXT));
//    EXPECT_EQ(std::string("GL_TEXTURE_CLIPMAP_CENTER_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_CLIPMAP_CENTER_SGIX));
//    EXPECT_EQ(std::string("GL_TEXTURE_CLIPMAP_DEPTH_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_CLIPMAP_DEPTH_SGIX));
//    EXPECT_EQ(std::string("GL_TEXTURE_CLIPMAP_FRAME_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_CLIPMAP_FRAME_SGIX));
//    EXPECT_EQ(std::string("GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX));
//    EXPECT_EQ(std::string("GL_TEXTURE_CLIPMAP_OFFSET_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_CLIPMAP_OFFSET_SGIX));
//    EXPECT_EQ(std::string("GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX));
    EXPECT_EQ(std::string("GL_TEXTURE_COLOR_SAMPLES_NV"),Regal::Token::GLenumToString(GL_TEXTURE_COLOR_SAMPLES_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_COLOR_TABLE_SGI"),Regal::Token::GLenumToString(GL_TEXTURE_COLOR_TABLE_SGI));
//    EXPECT_EQ(std::string("GL_TEXTURE_COLOR_WRITEMASK_SGIS"),Regal::Token::GLenumToString(GL_TEXTURE_COLOR_WRITEMASK_SGIS));
    EXPECT_EQ(std::string("GL_TEXTURE_COMPARE_FAIL_VALUE_ARB"),Regal::Token::GLenumToString(GL_TEXTURE_COMPARE_FAIL_VALUE_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_COMPARE_FUNC"),Regal::Token::GLenumToString(GL_TEXTURE_COMPARE_FUNC));
    EXPECT_EQ(std::string("GL_TEXTURE_COMPARE_FUNC"),Regal::Token::GLenumToString(GL_TEXTURE_COMPARE_FUNC_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_COMPARE_MODE"),Regal::Token::GLenumToString(GL_TEXTURE_COMPARE_MODE));
    EXPECT_EQ(std::string("GL_TEXTURE_COMPARE_MODE"),Regal::Token::GLenumToString(GL_TEXTURE_COMPARE_MODE_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_COMPARE_OPERATOR_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_COMPARE_OPERATOR_SGIX));
    EXPECT_EQ(std::string("GL_TEXTURE_COMPARE_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_COMPARE_SGIX));
    EXPECT_EQ(std::string("GL_TEXTURE_COMPRESSED"),Regal::Token::GLenumToString(GL_TEXTURE_COMPRESSED));
    EXPECT_EQ(std::string("GL_TEXTURE_COMPRESSED"),Regal::Token::GLenumToString(GL_TEXTURE_COMPRESSED_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_COMPRESSED_IMAGE_SIZE"),Regal::Token::GLenumToString(GL_TEXTURE_COMPRESSED_IMAGE_SIZE));
    EXPECT_EQ(std::string("GL_TEXTURE_COMPRESSED_IMAGE_SIZE"),Regal::Token::GLenumToString(GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_COMPRESSION_HINT"),Regal::Token::GLenumToString(GL_TEXTURE_COMPRESSION_HINT));
    EXPECT_EQ(std::string("GL_TEXTURE_COMPRESSION_HINT"),Regal::Token::GLenumToString(GL_TEXTURE_COMPRESSION_HINT_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_CONSTANT_DATA_SUNX"),Regal::Token::GLenumToString(GL_TEXTURE_CONSTANT_DATA_SUNX));
    EXPECT_EQ(std::string("GL_TEXTURE_COORD_ARRAY_ADDRESS_NV"),Regal::Token::GLenumToString(GL_TEXTURE_COORD_ARRAY_ADDRESS_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_COORD_ARRAY_COUNT_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_COORD_ARRAY_COUNT_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_COORD_ARRAY_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_COORD_ARRAY_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_COORD_ARRAY_LENGTH_NV"),Regal::Token::GLenumToString(GL_TEXTURE_COORD_ARRAY_LENGTH_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL"),Regal::Token::GLenumToString(GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL));
    EXPECT_EQ(std::string("GL_TEXTURE_COORD_ARRAY_POINTER_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_COORD_ARRAY_POINTER_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_COORD_ARRAY_SIZE_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_COORD_ARRAY_SIZE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_COORD_ARRAY_STRIDE_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_COORD_ARRAY_STRIDE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_COORD_ARRAY_TYPE_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_COORD_ARRAY_TYPE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_COORD_NV"),Regal::Token::GLenumToString(GL_TEXTURE_COORD_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_COVERAGE_SAMPLES_NV"),Regal::Token::GLenumToString(GL_TEXTURE_COVERAGE_SAMPLES_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_ARRAY));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_ARRAY_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_NEGATIVE_X"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_NEGATIVE_X));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_NEGATIVE_X"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_NEGATIVE_X"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_NEGATIVE_Y"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_NEGATIVE_Y));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_NEGATIVE_Y"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_NEGATIVE_Y"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_NEGATIVE_Z"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_NEGATIVE_Z));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_NEGATIVE_Z"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_NEGATIVE_Z"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_POSITIVE_X"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_POSITIVE_X));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_POSITIVE_X"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_POSITIVE_X"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_POSITIVE_Y"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_POSITIVE_Y));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_POSITIVE_Y"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_POSITIVE_Y"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_POSITIVE_Z"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_POSITIVE_Z));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_POSITIVE_Z"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_POSITIVE_Z"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_CUBE_MAP_SEAMLESS"),Regal::Token::GLenumToString(GL_TEXTURE_CUBE_MAP_SEAMLESS));
//    EXPECT_EQ(std::string("GL_TEXTURE_DEFORMATION_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_DEFORMATION_SGIX));
    EXPECT_EQ(std::string("GL_TEXTURE_DEPTH"),Regal::Token::GLenumToString(GL_TEXTURE_DEPTH));
    EXPECT_EQ(std::string("GL_TEXTURE_DEPTH"),Regal::Token::GLenumToString(GL_TEXTURE_DEPTH_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_DEPTH_SIZE"),Regal::Token::GLenumToString(GL_TEXTURE_DEPTH_SIZE));
    EXPECT_EQ(std::string("GL_TEXTURE_DEPTH_SIZE"),Regal::Token::GLenumToString(GL_TEXTURE_DEPTH_SIZE_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_DEPTH_TYPE"),Regal::Token::GLenumToString(GL_TEXTURE_DEPTH_TYPE));
    EXPECT_EQ(std::string("GL_TEXTURE_DEPTH_TYPE"),Regal::Token::GLenumToString(GL_TEXTURE_DEPTH_TYPE_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_DS_SIZE_NV"),Regal::Token::GLenumToString(GL_TEXTURE_DS_SIZE_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_DT_SIZE_NV"),Regal::Token::GLenumToString(GL_TEXTURE_DT_SIZE_NV));
//    EXPECT_EQ(std::string("GL_TEXTURE_ENV_BIAS_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_ENV_BIAS_SGIX));
    EXPECT_EQ(std::string("GL_TEXTURE_FILTER_CONTROL"),Regal::Token::GLenumToString(GL_TEXTURE_FILTER_CONTROL));
    EXPECT_EQ(std::string("GL_TEXTURE_FILTER_CONTROL"),Regal::Token::GLenumToString(GL_TEXTURE_FILTER_CONTROL_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_FIXED_SAMPLE_LOCATIONS"),Regal::Token::GLenumToString(GL_TEXTURE_FIXED_SAMPLE_LOCATIONS));
    EXPECT_EQ(std::string("GL_TEXTURE_FLOAT_COMPONENTS_NV"),Regal::Token::GLenumToString(GL_TEXTURE_FLOAT_COMPONENTS_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_FREE_MEMORY_ATI"),Regal::Token::GLenumToString(GL_TEXTURE_FREE_MEMORY_ATI));
    EXPECT_EQ(std::string("GL_TEXTURE_GEQUAL_R_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_GEQUAL_R_SGIX));
    EXPECT_EQ(std::string("GL_TEXTURE_GREEN_SIZE_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_GREEN_SIZE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_GREEN_TYPE"),Regal::Token::GLenumToString(GL_TEXTURE_GREEN_TYPE));
    EXPECT_EQ(std::string("GL_TEXTURE_GREEN_TYPE"),Regal::Token::GLenumToString(GL_TEXTURE_GREEN_TYPE_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_HI_SIZE_NV"),Regal::Token::GLenumToString(GL_TEXTURE_HI_SIZE_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_IMMUTABLE_FORMAT"),Regal::Token::GLenumToString(GL_TEXTURE_IMMUTABLE_FORMAT));
    EXPECT_EQ(std::string("GL_TEXTURE_INDEX_SIZE_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_INDEX_SIZE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_INTENSITY_SIZE_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_INTENSITY_SIZE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_INTENSITY_TYPE"),Regal::Token::GLenumToString(GL_TEXTURE_INTENSITY_TYPE));
    EXPECT_EQ(std::string("GL_TEXTURE_INTENSITY_TYPE"),Regal::Token::GLenumToString(GL_TEXTURE_INTENSITY_TYPE_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_LEQUAL_R_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_LEQUAL_R_SGIX));
//    EXPECT_EQ(std::string("GL_TEXTURE_LIGHTING_MODE_HP"),Regal::Token::GLenumToString(GL_TEXTURE_LIGHTING_MODE_HP));
    EXPECT_EQ(std::string("GL_TEXTURE_LIGHT_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_LIGHT_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_LOD_BIAS"),Regal::Token::GLenumToString(GL_TEXTURE_LOD_BIAS));
    EXPECT_EQ(std::string("GL_TEXTURE_LOD_BIAS"),Regal::Token::GLenumToString(GL_TEXTURE_LOD_BIAS_EXT));
//    EXPECT_EQ(std::string("GL_TEXTURE_LOD_BIAS_R_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_LOD_BIAS_R_SGIX));
//    EXPECT_EQ(std::string("GL_TEXTURE_LOD_BIAS_S_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_LOD_BIAS_S_SGIX));
//    EXPECT_EQ(std::string("GL_TEXTURE_LOD_BIAS_T_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_LOD_BIAS_T_SGIX));
    EXPECT_EQ(std::string("GL_TEXTURE_LO_SIZE_NV"),Regal::Token::GLenumToString(GL_TEXTURE_LO_SIZE_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_LUMINANCE_SIZE_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_LUMINANCE_SIZE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_LUMINANCE_TYPE"),Regal::Token::GLenumToString(GL_TEXTURE_LUMINANCE_TYPE));
    EXPECT_EQ(std::string("GL_TEXTURE_LUMINANCE_TYPE"),Regal::Token::GLenumToString(GL_TEXTURE_LUMINANCE_TYPE_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_MAG_SIZE_NV"),Regal::Token::GLenumToString(GL_TEXTURE_MAG_SIZE_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_MATERIAL_FACE_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_MATERIAL_FACE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_MATERIAL_PARAMETER_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_MATERIAL_PARAMETER_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_MAX_ANISOTROPY_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_MAX_ANISOTROPY_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_MAX_CLAMP_R_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_MAX_CLAMP_R_SGIX));
    EXPECT_EQ(std::string("GL_TEXTURE_MAX_CLAMP_S_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_MAX_CLAMP_S_SGIX));
    EXPECT_EQ(std::string("GL_TEXTURE_MAX_CLAMP_T_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_MAX_CLAMP_T_SGIX));
    EXPECT_EQ(std::string("GL_TEXTURE_MAX_LEVEL"),Regal::Token::GLenumToString(GL_TEXTURE_MAX_LEVEL));
    EXPECT_EQ(std::string("GL_TEXTURE_MAX_LEVEL"),Regal::Token::GLenumToString(GL_TEXTURE_MAX_LEVEL_SGIS));
    EXPECT_EQ(std::string("GL_TEXTURE_MAX_LOD"),Regal::Token::GLenumToString(GL_TEXTURE_MAX_LOD));
    EXPECT_EQ(std::string("GL_TEXTURE_MAX_LOD"),Regal::Token::GLenumToString(GL_TEXTURE_MAX_LOD_SGIS));
    EXPECT_EQ(std::string("GL_TEXTURE_MIN_LOD"),Regal::Token::GLenumToString(GL_TEXTURE_MIN_LOD));
    EXPECT_EQ(std::string("GL_TEXTURE_MIN_LOD"),Regal::Token::GLenumToString(GL_TEXTURE_MIN_LOD_SGIS));
    EXPECT_EQ(std::string("GL_TEXTURE_MULTI_BUFFER_HINT_SGIX"),Regal::Token::GLenumToString(GL_TEXTURE_MULTI_BUFFER_HINT_SGIX));
    EXPECT_EQ(std::string("GL_TEXTURE_NORMAL_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_NORMAL_EXT));
//    EXPECT_EQ(std::string("GL_TEXTURE_POST_SPECULAR_HP"),Regal::Token::GLenumToString(GL_TEXTURE_POST_SPECULAR_HP));
//    EXPECT_EQ(std::string("GL_TEXTURE_PRE_SPECULAR_HP"),Regal::Token::GLenumToString(GL_TEXTURE_PRE_SPECULAR_HP));
    EXPECT_EQ(std::string("GL_TEXTURE_PRIORITY_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_PRIORITY_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_RANGE_LENGTH_APPLE"),Regal::Token::GLenumToString(GL_TEXTURE_RANGE_LENGTH_APPLE));
    EXPECT_EQ(std::string("GL_TEXTURE_RANGE_POINTER_APPLE"),Regal::Token::GLenumToString(GL_TEXTURE_RANGE_POINTER_APPLE));
    EXPECT_EQ(std::string("GL_TEXTURE_RECTANGLE"),Regal::Token::GLenumToString(GL_TEXTURE_RECTANGLE));
    EXPECT_EQ(std::string("GL_TEXTURE_RECTANGLE"),Regal::Token::GLenumToString(GL_TEXTURE_RECTANGLE_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_RECTANGLE"),Regal::Token::GLenumToString(GL_TEXTURE_RECTANGLE_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_RED_SIZE_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_RED_SIZE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_RED_TYPE"),Regal::Token::GLenumToString(GL_TEXTURE_RED_TYPE));
    EXPECT_EQ(std::string("GL_TEXTURE_RED_TYPE"),Regal::Token::GLenumToString(GL_TEXTURE_RED_TYPE_ARB));
    EXPECT_EQ(std::string("GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV"),Regal::Token::GLenumToString(GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_RENDERBUFFER_NV"),Regal::Token::GLenumToString(GL_TEXTURE_RENDERBUFFER_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_RESIDENT_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_RESIDENT_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_SAMPLES"),Regal::Token::GLenumToString(GL_TEXTURE_SAMPLES));
    EXPECT_EQ(std::string("GL_TEXTURE_SHADER_NV"),Regal::Token::GLenumToString(GL_TEXTURE_SHADER_NV));
    EXPECT_EQ(std::string("GL_TEXTURE_SHARED_SIZE"),Regal::Token::GLenumToString(GL_TEXTURE_SHARED_SIZE));
    EXPECT_EQ(std::string("GL_TEXTURE_SHARED_SIZE"),Regal::Token::GLenumToString(GL_TEXTURE_SHARED_SIZE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_SRGB_DECODE_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_SRGB_DECODE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_STENCIL_SIZE"),Regal::Token::GLenumToString(GL_TEXTURE_STENCIL_SIZE));
    EXPECT_EQ(std::string("GL_TEXTURE_STENCIL_SIZE"),Regal::Token::GLenumToString(GL_TEXTURE_STENCIL_SIZE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_STORAGE_HINT_APPLE"),Regal::Token::GLenumToString(GL_TEXTURE_STORAGE_HINT_APPLE));
    EXPECT_EQ(std::string("GL_TEXTURE_SWIZZLE_A"),Regal::Token::GLenumToString(GL_TEXTURE_SWIZZLE_A));
    EXPECT_EQ(std::string("GL_TEXTURE_SWIZZLE_A"),Regal::Token::GLenumToString(GL_TEXTURE_SWIZZLE_A_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_SWIZZLE_B"),Regal::Token::GLenumToString(GL_TEXTURE_SWIZZLE_B));
    EXPECT_EQ(std::string("GL_TEXTURE_SWIZZLE_B"),Regal::Token::GLenumToString(GL_TEXTURE_SWIZZLE_B_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_SWIZZLE_G"),Regal::Token::GLenumToString(GL_TEXTURE_SWIZZLE_G));
    EXPECT_EQ(std::string("GL_TEXTURE_SWIZZLE_G"),Regal::Token::GLenumToString(GL_TEXTURE_SWIZZLE_G_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_SWIZZLE_R"),Regal::Token::GLenumToString(GL_TEXTURE_SWIZZLE_R));
    EXPECT_EQ(std::string("GL_TEXTURE_SWIZZLE_RGBA"),Regal::Token::GLenumToString(GL_TEXTURE_SWIZZLE_RGBA));
    EXPECT_EQ(std::string("GL_TEXTURE_SWIZZLE_RGBA"),Regal::Token::GLenumToString(GL_TEXTURE_SWIZZLE_RGBA_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_SWIZZLE_R_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_SWIZZLE_R_EXT));
//    EXPECT_EQ(std::string("GL_TEXTURE_TOO_LARGE_EXT"),Regal::Token::GLenumToString(GL_TEXTURE_TOO_LARGE_EXT));
    EXPECT_EQ(std::string("GL_TEXTURE_UNSIGNED_REMAP_MODE_NV"),Regal::Token::GLenumToString(GL_TEXTURE_UNSIGNED_REMAP_MODE_NV));
//    EXPECT_EQ(std::string("GL_TEXTURE_WRAP_Q_SGIS"),Regal::Token::GLenumToString(GL_TEXTURE_WRAP_Q_SGIS));
    EXPECT_EQ(std::string("GL_TEXTURE_WRAP_R"),Regal::Token::GLenumToString(GL_TEXTURE_WRAP_R));
    EXPECT_EQ(std::string("GL_TEXTURE_WRAP_R"),Regal::Token::GLenumToString(GL_TEXTURE_WRAP_R_EXT));
    EXPECT_EQ(std::string("GL_TEXT_FRAGMENT_SHADER_ATI"),Regal::Token::GLenumToString(GL_TEXT_FRAGMENT_SHADER_ATI));
    EXPECT_EQ(std::string("GL_TIMEOUT_EXPIRED"),Regal::Token::GLenumToString(GL_TIMEOUT_EXPIRED));
    EXPECT_EQ(std::string("GL_TIMESTAMP"),Regal::Token::GLenumToString(GL_TIMESTAMP));
    EXPECT_EQ(std::string("GL_TIME_ELAPSED"),Regal::Token::GLenumToString(GL_TIME_ELAPSED));
    EXPECT_EQ(std::string("GL_TIME_ELAPSED"),Regal::Token::GLenumToString(GL_TIME_ELAPSED_EXT));
    EXPECT_EQ(std::string("GL_TRACK_MATRIX_NV"),Regal::Token::GLenumToString(GL_TRACK_MATRIX_NV));
    EXPECT_EQ(std::string("GL_TRACK_MATRIX_TRANSFORM_NV"),Regal::Token::GLenumToString(GL_TRACK_MATRIX_TRANSFORM_NV));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK));
//    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_ACTIVE"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_ACTIVE));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_ATTRIBS_NV"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_ATTRIBS_NV));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BINDING"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BINDING));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BINDING_NV"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BINDING_NV));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_EXT));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER_MODE"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_MODE));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER_MODE"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER_MODE"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_NV));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER_SIZE"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_SIZE));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER_SIZE"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER_SIZE"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER_START"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_START));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER_START"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_BUFFER_START"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_BUFFER_START_NV));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_NV"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_NV));
//    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_PAUSED"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_PAUSED));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_RECORD_NV"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_RECORD_NV));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_VARYINGS"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_VARYINGS));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_VARYINGS"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_VARYINGS_EXT));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_VARYINGS"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_VARYINGS_NV));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH));
    EXPECT_EQ(std::string("GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH"),Regal::Token::GLenumToString(GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT));
    EXPECT_EQ(std::string("GL_TRANSFORM_HINT_APPLE"),Regal::Token::GLenumToString(GL_TRANSFORM_HINT_APPLE));
    EXPECT_EQ(std::string("GL_TRANSLATE_X_NV"),Regal::Token::GLenumToString(GL_TRANSLATE_X_NV));
    EXPECT_EQ(std::string("GL_TRANSLATE_Y_NV"),Regal::Token::GLenumToString(GL_TRANSLATE_Y_NV));
    EXPECT_EQ(std::string("GL_TRANSPOSE_COLOR_MATRIX"),Regal::Token::GLenumToString(GL_TRANSPOSE_COLOR_MATRIX));
    EXPECT_EQ(std::string("GL_TRANSPOSE_COLOR_MATRIX"),Regal::Token::GLenumToString(GL_TRANSPOSE_COLOR_MATRIX_ARB));
    EXPECT_EQ(std::string("GL_TRANSPOSE_CURRENT_MATRIX_ARB"),Regal::Token::GLenumToString(GL_TRANSPOSE_CURRENT_MATRIX_ARB));
    EXPECT_EQ(std::string("GL_TRANSPOSE_MODELVIEW_MATRIX"),Regal::Token::GLenumToString(GL_TRANSPOSE_MODELVIEW_MATRIX));
    EXPECT_EQ(std::string("GL_TRANSPOSE_MODELVIEW_MATRIX"),Regal::Token::GLenumToString(GL_TRANSPOSE_MODELVIEW_MATRIX_ARB));
    EXPECT_EQ(std::string("GL_TRANSPOSE_NV"),Regal::Token::GLenumToString(GL_TRANSPOSE_NV));
    EXPECT_EQ(std::string("GL_TRANSPOSE_PROGRAM_MATRIX_EXT"),Regal::Token::GLenumToString(GL_TRANSPOSE_PROGRAM_MATRIX_EXT));
    EXPECT_EQ(std::string("GL_TRANSPOSE_PROJECTION_MATRIX"),Regal::Token::GLenumToString(GL_TRANSPOSE_PROJECTION_MATRIX));
    EXPECT_EQ(std::string("GL_TRANSPOSE_PROJECTION_MATRIX"),Regal::Token::GLenumToString(GL_TRANSPOSE_PROJECTION_MATRIX_ARB));
    EXPECT_EQ(std::string("GL_TRANSPOSE_TEXTURE_MATRIX"),Regal::Token::GLenumToString(GL_TRANSPOSE_TEXTURE_MATRIX));
    EXPECT_EQ(std::string("GL_TRANSPOSE_TEXTURE_MATRIX"),Regal::Token::GLenumToString(GL_TRANSPOSE_TEXTURE_MATRIX_ARB));
    EXPECT_EQ(std::string("GL_TRIANGLES_ADJACENCY"),Regal::Token::GLenumToString(GL_TRIANGLES_ADJACENCY));
    EXPECT_EQ(std::string("GL_TRIANGLES_ADJACENCY"),Regal::Token::GLenumToString(GL_TRIANGLES_ADJACENCY_ARB));
    EXPECT_EQ(std::string("GL_TRIANGLES_ADJACENCY"),Regal::Token::GLenumToString(GL_TRIANGLES_ADJACENCY_EXT));
    EXPECT_EQ(std::string("GL_TRIANGLE_LIST_SUN"),Regal::Token::GLenumToString(GL_TRIANGLE_LIST_SUN));
    EXPECT_EQ(std::string("GL_TRIANGLE_MESH_SUN"),Regal::Token::GLenumToString(GL_TRIANGLE_MESH_SUN));
    EXPECT_EQ(std::string("GL_TRIANGLE_STRIP_ADJACENCY"),Regal::Token::GLenumToString(GL_TRIANGLE_STRIP_ADJACENCY));
    EXPECT_EQ(std::string("GL_TRIANGLE_STRIP_ADJACENCY"),Regal::Token::GLenumToString(GL_TRIANGLE_STRIP_ADJACENCY_ARB));
    EXPECT_EQ(std::string("GL_TRIANGLE_STRIP_ADJACENCY"),Regal::Token::GLenumToString(GL_TRIANGLE_STRIP_ADJACENCY_EXT));
    EXPECT_EQ(std::string("GL_TRIANGULAR_NV"),Regal::Token::GLenumToString(GL_TRIANGULAR_NV));
//    EXPECT_EQ(std::string("GL_TYPE_RGBA_FLOAT_ATI"),Regal::Token::GLenumToString(GL_TYPE_RGBA_FLOAT_ATI));
    EXPECT_EQ(std::string("GL_UNDEFINED_APPLE"),Regal::Token::GLenumToString(GL_UNDEFINED_APPLE));
    EXPECT_EQ(std::string("GL_UNDEFINED_VERTEX"),Regal::Token::GLenumToString(GL_UNDEFINED_VERTEX));
    EXPECT_EQ(std::string("GL_UNIFORM_ARRAY_STRIDE"),Regal::Token::GLenumToString(GL_UNIFORM_ARRAY_STRIDE));
    EXPECT_EQ(std::string("GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX"),Regal::Token::GLenumToString(GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX));
    EXPECT_EQ(std::string("GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS"),Regal::Token::GLenumToString(GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS));
    EXPECT_EQ(std::string("GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES"),Regal::Token::GLenumToString(GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES));
    EXPECT_EQ(std::string("GL_UNIFORM_BLOCK_BINDING"),Regal::Token::GLenumToString(GL_UNIFORM_BLOCK_BINDING));
    EXPECT_EQ(std::string("GL_UNIFORM_BLOCK_DATA_SIZE"),Regal::Token::GLenumToString(GL_UNIFORM_BLOCK_DATA_SIZE));
    EXPECT_EQ(std::string("GL_UNIFORM_BLOCK_INDEX"),Regal::Token::GLenumToString(GL_UNIFORM_BLOCK_INDEX));
    EXPECT_EQ(std::string("GL_UNIFORM_BLOCK_NAME_LENGTH"),Regal::Token::GLenumToString(GL_UNIFORM_BLOCK_NAME_LENGTH));
    EXPECT_EQ(std::string("GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER"),Regal::Token::GLenumToString(GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER));
    EXPECT_EQ(std::string("GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER"),Regal::Token::GLenumToString(GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER));
    EXPECT_EQ(std::string("GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER"),Regal::Token::GLenumToString(GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER));
    EXPECT_EQ(std::string("GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER"),Regal::Token::GLenumToString(GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER));
    EXPECT_EQ(std::string("GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER"),Regal::Token::GLenumToString(GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER));
    EXPECT_EQ(std::string("GL_UNIFORM_BUFFER"),Regal::Token::GLenumToString(GL_UNIFORM_BUFFER));
    EXPECT_EQ(std::string("GL_UNIFORM_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_UNIFORM_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_UNIFORM_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_UNIFORM_BUFFER_BINDING_EXT));
    EXPECT_EQ(std::string("GL_UNIFORM_BUFFER"),Regal::Token::GLenumToString(GL_UNIFORM_BUFFER_EXT));
    EXPECT_EQ(std::string("GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT"),Regal::Token::GLenumToString(GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT));
    EXPECT_EQ(std::string("GL_UNIFORM_BUFFER_SIZE"),Regal::Token::GLenumToString(GL_UNIFORM_BUFFER_SIZE));
    EXPECT_EQ(std::string("GL_UNIFORM_BUFFER_START"),Regal::Token::GLenumToString(GL_UNIFORM_BUFFER_START));
    EXPECT_EQ(std::string("GL_UNIFORM_IS_ROW_MAJOR"),Regal::Token::GLenumToString(GL_UNIFORM_IS_ROW_MAJOR));
    EXPECT_EQ(std::string("GL_UNIFORM_MATRIX_STRIDE"),Regal::Token::GLenumToString(GL_UNIFORM_MATRIX_STRIDE));
    EXPECT_EQ(std::string("GL_UNIFORM_NAME_LENGTH"),Regal::Token::GLenumToString(GL_UNIFORM_NAME_LENGTH));
    EXPECT_EQ(std::string("GL_UNIFORM_OFFSET"),Regal::Token::GLenumToString(GL_UNIFORM_OFFSET));
    EXPECT_EQ(std::string("GL_UNIFORM_SIZE"),Regal::Token::GLenumToString(GL_UNIFORM_SIZE));
    EXPECT_EQ(std::string("GL_UNIFORM_TYPE"),Regal::Token::GLenumToString(GL_UNIFORM_TYPE));
    EXPECT_EQ(std::string("GL_UNKNOWN_CONTEXT_RESET_ARB"),Regal::Token::GLenumToString(GL_UNKNOWN_CONTEXT_RESET_ARB));
    EXPECT_EQ(std::string("GL_UNPACK_CLIENT_STORAGE_APPLE"),Regal::Token::GLenumToString(GL_UNPACK_CLIENT_STORAGE_APPLE));
    EXPECT_EQ(std::string("GL_UNPACK_CMYK_HINT_EXT"),Regal::Token::GLenumToString(GL_UNPACK_CMYK_HINT_EXT));
    EXPECT_EQ(std::string("GL_UNPACK_COMPRESSED_BLOCK_DEPTH"),Regal::Token::GLenumToString(GL_UNPACK_COMPRESSED_BLOCK_DEPTH));
    EXPECT_EQ(std::string("GL_UNPACK_COMPRESSED_BLOCK_HEIGHT"),Regal::Token::GLenumToString(GL_UNPACK_COMPRESSED_BLOCK_HEIGHT));
    EXPECT_EQ(std::string("GL_UNPACK_COMPRESSED_BLOCK_SIZE"),Regal::Token::GLenumToString(GL_UNPACK_COMPRESSED_BLOCK_SIZE));
    EXPECT_EQ(std::string("GL_UNPACK_COMPRESSED_BLOCK_WIDTH"),Regal::Token::GLenumToString(GL_UNPACK_COMPRESSED_BLOCK_WIDTH));
    EXPECT_EQ(std::string("GL_UNPACK_CONSTANT_DATA_SUNX"),Regal::Token::GLenumToString(GL_UNPACK_CONSTANT_DATA_SUNX));
//    EXPECT_EQ(std::string("GL_UNPACK_IMAGE_DEPTH_SGIS"),Regal::Token::GLenumToString(GL_UNPACK_IMAGE_DEPTH_SGIS));
    EXPECT_EQ(std::string("GL_UNPACK_IMAGE_HEIGHT"),Regal::Token::GLenumToString(GL_UNPACK_IMAGE_HEIGHT));
    EXPECT_EQ(std::string("GL_UNPACK_IMAGE_HEIGHT"),Regal::Token::GLenumToString(GL_UNPACK_IMAGE_HEIGHT_EXT));
    EXPECT_EQ(std::string("GL_UNPACK_RESAMPLE_OML"),Regal::Token::GLenumToString(GL_UNPACK_RESAMPLE_OML));
    EXPECT_EQ(std::string("GL_UNPACK_RESAMPLE_SGIX"),Regal::Token::GLenumToString(GL_UNPACK_RESAMPLE_SGIX));
    EXPECT_EQ(std::string("GL_UNPACK_ROW_BYTES_APPLE"),Regal::Token::GLenumToString(GL_UNPACK_ROW_BYTES_APPLE));
    EXPECT_EQ(std::string("GL_UNPACK_SKIP_IMAGES"),Regal::Token::GLenumToString(GL_UNPACK_SKIP_IMAGES));
    EXPECT_EQ(std::string("GL_UNPACK_SKIP_IMAGES"),Regal::Token::GLenumToString(GL_UNPACK_SKIP_IMAGES_EXT));
//    EXPECT_EQ(std::string("GL_UNPACK_SKIP_VOLUMES_SGIS"),Regal::Token::GLenumToString(GL_UNPACK_SKIP_VOLUMES_SGIS));
//    EXPECT_EQ(std::string("GL_UNPACK_SUBSAMPLE_RATE_SGIX"),Regal::Token::GLenumToString(GL_UNPACK_SUBSAMPLE_RATE_SGIX));
    EXPECT_EQ(std::string("GL_UNSIGNALED"),Regal::Token::GLenumToString(GL_UNSIGNALED));
    EXPECT_EQ(std::string("GL_UNSIGNED_IDENTITY_NV"),Regal::Token::GLenumToString(GL_UNSIGNED_IDENTITY_NV));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_ATOMIC_COUNTER"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_ATOMIC_COUNTER));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_IMAGE_BUFFER"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_IMAGE_BUFFER));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_IMAGE_BUFFER"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_IMAGE_BUFFER_EXT));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_IMAGE_CUBE"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_IMAGE_CUBE));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_IMAGE_CUBE"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_IMAGE_CUBE_EXT));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_SAMPLER_BUFFER"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_SAMPLER_BUFFER));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_SAMPLER_BUFFER"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_SAMPLER_CUBE"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_SAMPLER_CUBE));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_SAMPLER_CUBE"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_SAMPLER_CUBE_EXT));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB));
    EXPECT_EQ(std::string("GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV"),Regal::Token::GLenumToString(GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV));
    EXPECT_EQ(std::string("GL_UNSIGNED_INVERT_NV"),Regal::Token::GLenumToString(GL_UNSIGNED_INVERT_NV));
    EXPECT_EQ(std::string("GL_UNSIGNED_NORMALIZED"),Regal::Token::GLenumToString(GL_UNSIGNED_NORMALIZED));
    EXPECT_EQ(std::string("GL_UNSIGNED_NORMALIZED"),Regal::Token::GLenumToString(GL_UNSIGNED_NORMALIZED_ARB));
    EXPECT_EQ(std::string("GL_UPPER_LEFT"),Regal::Token::GLenumToString(GL_UPPER_LEFT));
    EXPECT_EQ(std::string("GL_USE_MISSING_GLYPH_NV"),Regal::Token::GLenumToString(GL_USE_MISSING_GLYPH_NV));
    EXPECT_EQ(std::string("GL_VALIDATE_STATUS"),Regal::Token::GLenumToString(GL_VALIDATE_STATUS));
    EXPECT_EQ(std::string("GL_VARIABLE_A_NV"),Regal::Token::GLenumToString(GL_VARIABLE_A_NV));
    EXPECT_EQ(std::string("GL_VARIABLE_B_NV"),Regal::Token::GLenumToString(GL_VARIABLE_B_NV));
    EXPECT_EQ(std::string("GL_VARIABLE_C_NV"),Regal::Token::GLenumToString(GL_VARIABLE_C_NV));
    EXPECT_EQ(std::string("GL_VARIABLE_D_NV"),Regal::Token::GLenumToString(GL_VARIABLE_D_NV));
    EXPECT_EQ(std::string("GL_VARIABLE_E_NV"),Regal::Token::GLenumToString(GL_VARIABLE_E_NV));
    EXPECT_EQ(std::string("GL_VARIABLE_F_NV"),Regal::Token::GLenumToString(GL_VARIABLE_F_NV));
    EXPECT_EQ(std::string("GL_VARIABLE_G_NV"),Regal::Token::GLenumToString(GL_VARIABLE_G_NV));
    EXPECT_EQ(std::string("GL_VARIANT_ARRAY_EXT"),Regal::Token::GLenumToString(GL_VARIANT_ARRAY_EXT));
    EXPECT_EQ(std::string("GL_VARIANT_ARRAY_POINTER_EXT"),Regal::Token::GLenumToString(GL_VARIANT_ARRAY_POINTER_EXT));
    EXPECT_EQ(std::string("GL_VARIANT_ARRAY_STRIDE_EXT"),Regal::Token::GLenumToString(GL_VARIANT_ARRAY_STRIDE_EXT));
    EXPECT_EQ(std::string("GL_VARIANT_ARRAY_TYPE_EXT"),Regal::Token::GLenumToString(GL_VARIANT_ARRAY_TYPE_EXT));
    EXPECT_EQ(std::string("GL_VARIANT_DATATYPE_EXT"),Regal::Token::GLenumToString(GL_VARIANT_DATATYPE_EXT));
    EXPECT_EQ(std::string("GL_VARIANT_EXT"),Regal::Token::GLenumToString(GL_VARIANT_EXT));
    EXPECT_EQ(std::string("GL_VARIANT_VALUE_EXT"),Regal::Token::GLenumToString(GL_VARIANT_VALUE_EXT));
    EXPECT_EQ(std::string("GL_VBO_FREE_MEMORY_ATI"),Regal::Token::GLenumToString(GL_VBO_FREE_MEMORY_ATI));
    EXPECT_EQ(std::string("GL_VECTOR_EXT"),Regal::Token::GLenumToString(GL_VECTOR_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_ADDRESS_NV"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_ADDRESS_NV));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_BINDING"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_BINDING));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_BINDING_APPLE"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_BINDING_APPLE));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_BUFFER_BINDING_ARB));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_COUNT_EXT"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_COUNT_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_EXT"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_LENGTH_NV"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_LENGTH_NV));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_OBJECT_AMD"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_OBJECT_AMD));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_POINTER_EXT"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_POINTER_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_RANGE_APPLE"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_RANGE_APPLE));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_RANGE_LENGTH_NV"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_RANGE_LENGTH_NV));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_RANGE_NV"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_RANGE_NV));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_RANGE_POINTER_APPLE"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_RANGE_POINTER_APPLE));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_RANGE_POINTER_NV"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_RANGE_POINTER_NV));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_RANGE_VALID_NV"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_RANGE_VALID_NV));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_SIZE_EXT"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_SIZE_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_STORAGE_HINT_APPLE"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_STORAGE_HINT_APPLE));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_STRIDE_EXT"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_STRIDE_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_ARRAY_TYPE_EXT"),Regal::Token::GLenumToString(GL_VERTEX_ARRAY_TYPE_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_DIVISOR"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_DIVISOR));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_DIVISOR"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_ENABLED"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_ENABLED));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_ENABLED"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_INTEGER"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_INTEGER));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_INTEGER"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_INTEGER_NV));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_NORMALIZED"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_NORMALIZED));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_NORMALIZED"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_POINTER"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_POINTER));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_POINTER"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_SIZE"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_SIZE));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_SIZE"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_STRIDE"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_STRIDE));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_STRIDE"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_TYPE"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_TYPE));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_TYPE"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB));
    EXPECT_EQ(std::string("GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV"),Regal::Token::GLenumToString(GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV));
    EXPECT_EQ(std::string("GL_VERTEX_BLEND_ARB"),Regal::Token::GLenumToString(GL_VERTEX_BLEND_ARB));
    EXPECT_EQ(std::string("GL_VERTEX_CONSISTENT_HINT_PGI"),Regal::Token::GLenumToString(GL_VERTEX_CONSISTENT_HINT_PGI));
    EXPECT_EQ(std::string("GL_VERTEX_DATA_HINT_PGI"),Regal::Token::GLenumToString(GL_VERTEX_DATA_HINT_PGI));
    EXPECT_EQ(std::string("GL_VERTEX_ID_NV"),Regal::Token::GLenumToString(GL_VERTEX_ID_NV));
    EXPECT_EQ(std::string("GL_VERTEX_PRECLIP_HINT_SGIX"),Regal::Token::GLenumToString(GL_VERTEX_PRECLIP_HINT_SGIX));
    EXPECT_EQ(std::string("GL_VERTEX_PRECLIP_SGIX"),Regal::Token::GLenumToString(GL_VERTEX_PRECLIP_SGIX));
    EXPECT_EQ(std::string("GL_VERTEX_PROGRAM_ARB"),Regal::Token::GLenumToString(GL_VERTEX_PROGRAM_ARB));
    EXPECT_EQ(std::string("GL_VERTEX_PROGRAM_BINDING_NV"),Regal::Token::GLenumToString(GL_VERTEX_PROGRAM_BINDING_NV));
    EXPECT_EQ(std::string("GL_VERTEX_PROGRAM_NV"),Regal::Token::GLenumToString(GL_VERTEX_PROGRAM_NV));
    EXPECT_EQ(std::string("GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV"),Regal::Token::GLenumToString(GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV));
    EXPECT_EQ(std::string("GL_VERTEX_PROGRAM_POINT_SIZE"),Regal::Token::GLenumToString(GL_VERTEX_PROGRAM_POINT_SIZE));
    EXPECT_EQ(std::string("GL_VERTEX_PROGRAM_POINT_SIZE"),Regal::Token::GLenumToString(GL_VERTEX_PROGRAM_POINT_SIZE_ARB));
    EXPECT_EQ(std::string("GL_VERTEX_PROGRAM_POINT_SIZE"),Regal::Token::GLenumToString(GL_VERTEX_PROGRAM_POINT_SIZE_NV));
    EXPECT_EQ(std::string("GL_VERTEX_PROGRAM_TWO_SIDE"),Regal::Token::GLenumToString(GL_VERTEX_PROGRAM_TWO_SIDE));
    EXPECT_EQ(std::string("GL_VERTEX_PROGRAM_TWO_SIDE"),Regal::Token::GLenumToString(GL_VERTEX_PROGRAM_TWO_SIDE_ARB));
    EXPECT_EQ(std::string("GL_VERTEX_PROGRAM_TWO_SIDE"),Regal::Token::GLenumToString(GL_VERTEX_PROGRAM_TWO_SIDE_NV));
    EXPECT_EQ(std::string("GL_VERTEX_SHADER"),Regal::Token::GLenumToString(GL_VERTEX_SHADER));
    EXPECT_EQ(std::string("GL_VERTEX_SHADER"),Regal::Token::GLenumToString(GL_VERTEX_SHADER_ARB));
    EXPECT_EQ(std::string("GL_VERTEX_SHADER_BINDING_EXT"),Regal::Token::GLenumToString(GL_VERTEX_SHADER_BINDING_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_SHADER"),Regal::Token::GLenumToString(GL_VERTEX_SHADER_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_SHADER_INSTRUCTIONS_EXT"),Regal::Token::GLenumToString(GL_VERTEX_SHADER_INSTRUCTIONS_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_SHADER_INVARIANTS_EXT"),Regal::Token::GLenumToString(GL_VERTEX_SHADER_INVARIANTS_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_SHADER_LOCALS_EXT"),Regal::Token::GLenumToString(GL_VERTEX_SHADER_LOCALS_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT"),Regal::Token::GLenumToString(GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_SHADER_OPTIMIZED_EXT"),Regal::Token::GLenumToString(GL_VERTEX_SHADER_OPTIMIZED_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_SHADER_VARIANTS_EXT"),Regal::Token::GLenumToString(GL_VERTEX_SHADER_VARIANTS_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_SOURCE_ATI"),Regal::Token::GLenumToString(GL_VERTEX_SOURCE_ATI));
    EXPECT_EQ(std::string("GL_VERTEX_STATE_PROGRAM_NV"),Regal::Token::GLenumToString(GL_VERTEX_STATE_PROGRAM_NV));
    EXPECT_EQ(std::string("GL_VERTEX_WEIGHTING_EXT"),Regal::Token::GLenumToString(GL_VERTEX_WEIGHTING_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_WEIGHT_ARRAY_EXT"),Regal::Token::GLenumToString(GL_VERTEX_WEIGHT_ARRAY_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT"),Regal::Token::GLenumToString(GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT"),Regal::Token::GLenumToString(GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT"),Regal::Token::GLenumToString(GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT));
    EXPECT_EQ(std::string("GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT"),Regal::Token::GLenumToString(GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT));
    EXPECT_EQ(std::string("GL_VERTICAL_LINE_TO_NV"),Regal::Token::GLenumToString(GL_VERTICAL_LINE_TO_NV));
    EXPECT_EQ(std::string("GL_VIBRANCE_BIAS_NV"),Regal::Token::GLenumToString(GL_VIBRANCE_BIAS_NV));
    EXPECT_EQ(std::string("GL_VIBRANCE_SCALE_NV"),Regal::Token::GLenumToString(GL_VIBRANCE_SCALE_NV));
    EXPECT_EQ(std::string("GL_VIDEO_BUFFER_BINDING_NV"),Regal::Token::GLenumToString(GL_VIDEO_BUFFER_BINDING_NV));
    EXPECT_EQ(std::string("GL_VIDEO_BUFFER_INTERNAL_FORMAT_NV"),Regal::Token::GLenumToString(GL_VIDEO_BUFFER_INTERNAL_FORMAT_NV));
    EXPECT_EQ(std::string("GL_VIDEO_BUFFER_NV"),Regal::Token::GLenumToString(GL_VIDEO_BUFFER_NV));
    EXPECT_EQ(std::string("GL_VIDEO_BUFFER_PITCH_NV"),Regal::Token::GLenumToString(GL_VIDEO_BUFFER_PITCH_NV));
    EXPECT_EQ(std::string("GL_VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV"),Regal::Token::GLenumToString(GL_VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV));
    EXPECT_EQ(std::string("GL_VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV"),Regal::Token::GLenumToString(GL_VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV));
    EXPECT_EQ(std::string("GL_VIDEO_CAPTURE_FRAME_HEIGHT_NV"),Regal::Token::GLenumToString(GL_VIDEO_CAPTURE_FRAME_HEIGHT_NV));
    EXPECT_EQ(std::string("GL_VIDEO_CAPTURE_FRAME_WIDTH_NV"),Regal::Token::GLenumToString(GL_VIDEO_CAPTURE_FRAME_WIDTH_NV));
    EXPECT_EQ(std::string("GL_VIDEO_CAPTURE_SURFACE_ORIGIN_NV"),Regal::Token::GLenumToString(GL_VIDEO_CAPTURE_SURFACE_ORIGIN_NV));
    EXPECT_EQ(std::string("GL_VIDEO_COLOR_CONVERSION_MATRIX_NV"),Regal::Token::GLenumToString(GL_VIDEO_COLOR_CONVERSION_MATRIX_NV));
    EXPECT_EQ(std::string("GL_VIDEO_COLOR_CONVERSION_MAX_NV"),Regal::Token::GLenumToString(GL_VIDEO_COLOR_CONVERSION_MAX_NV));
    EXPECT_EQ(std::string("GL_VIDEO_COLOR_CONVERSION_MIN_NV"),Regal::Token::GLenumToString(GL_VIDEO_COLOR_CONVERSION_MIN_NV));
    EXPECT_EQ(std::string("GL_VIDEO_COLOR_CONVERSION_OFFSET_NV"),Regal::Token::GLenumToString(GL_VIDEO_COLOR_CONVERSION_OFFSET_NV));
    EXPECT_EQ(std::string("GL_VIEWPORT_BOUNDS_RANGE"),Regal::Token::GLenumToString(GL_VIEWPORT_BOUNDS_RANGE));
    EXPECT_EQ(std::string("GL_VIEWPORT_INDEX_PROVOKING_VERTEX"),Regal::Token::GLenumToString(GL_VIEWPORT_INDEX_PROVOKING_VERTEX));
    EXPECT_EQ(std::string("GL_VOLATILE_APPLE"),Regal::Token::GLenumToString(GL_VOLATILE_APPLE));
    EXPECT_EQ(std::string("GL_WAIT_FAILED"),Regal::Token::GLenumToString(GL_WAIT_FAILED));
    EXPECT_EQ(std::string("GL_WEIGHT_ARRAY_ARB"),Regal::Token::GLenumToString(GL_WEIGHT_ARRAY_ARB));
    EXPECT_EQ(std::string("GL_WEIGHT_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_WEIGHT_ARRAY_BUFFER_BINDING));
    EXPECT_EQ(std::string("GL_WEIGHT_ARRAY_BUFFER_BINDING"),Regal::Token::GLenumToString(GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB));
    EXPECT_EQ(std::string("GL_WEIGHT_ARRAY_POINTER_ARB"),Regal::Token::GLenumToString(GL_WEIGHT_ARRAY_POINTER_ARB));
    EXPECT_EQ(std::string("GL_WEIGHT_ARRAY_SIZE_ARB"),Regal::Token::GLenumToString(GL_WEIGHT_ARRAY_SIZE_ARB));
    EXPECT_EQ(std::string("GL_WEIGHT_ARRAY_STRIDE_ARB"),Regal::Token::GLenumToString(GL_WEIGHT_ARRAY_STRIDE_ARB));
    EXPECT_EQ(std::string("GL_WEIGHT_ARRAY_TYPE_ARB"),Regal::Token::GLenumToString(GL_WEIGHT_ARRAY_TYPE_ARB));
    EXPECT_EQ(std::string("GL_WEIGHT_SUM_UNITY_ARB"),Regal::Token::GLenumToString(GL_WEIGHT_SUM_UNITY_ARB));
    EXPECT_EQ(std::string("GL_WIDE_LINE_HINT_PGI"),Regal::Token::GLenumToString(GL_WIDE_LINE_HINT_PGI));
    EXPECT_EQ(std::string("GL_WRAP_BORDER_SUN"),Regal::Token::GLenumToString(GL_WRAP_BORDER_SUN));
    EXPECT_EQ(std::string("GL_WRITE_DISCARD_NV"),Regal::Token::GLenumToString(GL_WRITE_DISCARD_NV));
    EXPECT_EQ(std::string("GL_WRITE_ONLY"),Regal::Token::GLenumToString(GL_WRITE_ONLY));
    EXPECT_EQ(std::string("GL_WRITE_ONLY"),Regal::Token::GLenumToString(GL_WRITE_ONLY_ARB));
    EXPECT_EQ(std::string("GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV"),Regal::Token::GLenumToString(GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV));
    EXPECT_EQ(std::string("GL_WRITE_PIXEL_DATA_RANGE_NV"),Regal::Token::GLenumToString(GL_WRITE_PIXEL_DATA_RANGE_NV));
    EXPECT_EQ(std::string("GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV"),Regal::Token::GLenumToString(GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV));
    EXPECT_EQ(std::string("GL_W_EXT"),Regal::Token::GLenumToString(GL_W_EXT));
    EXPECT_EQ(std::string("GL_X_EXT"),Regal::Token::GLenumToString(GL_X_EXT));
    EXPECT_EQ(std::string("GL_YCBCR_MESA"),Regal::Token::GLenumToString(GL_YCBCR_MESA));
//    EXPECT_EQ(std::string("GL_YCRCBA_SGIX"),Regal::Token::GLenumToString(GL_YCRCBA_SGIX));
//    EXPECT_EQ(std::string("GL_YCRCB_SGIX"),Regal::Token::GLenumToString(GL_YCRCB_SGIX));
    EXPECT_EQ(std::string("GL_Y_EXT"),Regal::Token::GLenumToString(GL_Y_EXT));
    EXPECT_EQ(std::string("GL_ZERO_EXT"),Regal::Token::GLenumToString(GL_ZERO_EXT));
    EXPECT_EQ(std::string("GL_Z_EXT"),Regal::Token::GLenumToString(GL_Z_EXT));
  }
#endif
}
}
